简单的()(100分)

  • 主题发起人 主题发起人 bbdy3
  • 开始时间 开始时间
B

bbdy3

Unregistered / Unconfirmed
GUEST, unregistred user!
pardox数据库,类似通讯录,

ID 姓名 性别 年龄 ... 好友...
1 张三 true 20 ???
...

好友有很多(类似oicq的好友),不要写成一个长的字符串.
为形成关联,怎样组织表的结构?(改字段结构,添加表均可)

不清楚的话我再写.

 
表一:
ID 姓名 性别 年龄 ...
1 张三 true 20
.
.
.
10 李四 true 20
11 王五 false 20

表二:
ID 姓名 好友
1 张三 10
2 张三 11
.
.
.

SQL:
Select * from 表一 where 表一.ID=
(Select 表二.FriendID form 表二 where 表二.姓名=表一.姓名)
 
不清楚,我再补充:

第一次写的那个表,好友只能填一个(但好友有很多).

比如:可以生成一个表为 zs_friend.db(zs mean 张三) ,每条纪录写一个好友.
可进行next,prior,find,order等操作,有没有别的更好的方法实现?
==================

不清楚的话我再写
 
可以用主、从表结构:
主表: create table maintable
(id char(4),name char(12),xb char(2),age integer)

从表: create table subtable
(id char(4),name char(12),adr char(60),tel char(20))
从表中的ID字段对应主表中的ID字段,即主表中的一个ID值,在从表中可以有多个。
如查询张三的朋友情况:
query1.close;
query1.sql.clear;
query1.sql.add('select a.id,b.name,b.adr,b.tel form maintable a,subtable b');
query1.sql.add('where a.name=''张三''');
query1.open;
if query1.recordcount=0 then application.message('没有满足条件的记录!','反馈信息',48);
 
SORRY!应为:
if query1.recordcount=0 then application.messagebox('没有满足条件的记录!','反馈信息',48);
 
姓名是不是主码(能不能唯一标识那个人,有没有同名)?如果是可以象autofish那样。
如果不是可以把表二中的姓名改成能唯一标识一个人的字段。
 
让我好好想想...
 
明白了.谢谢解答.

我还想问两个问题.可以? (100分大家都有份嘛!)
1.模拟打印的时候,用 QRShape控件画表格线,应怎样写?
无论 QRShape.height 定义多长,第二页上就没线了(模拟显示),
怎解决?
2.一般工厂的原料仓库,要填入库单,出库单(进出原料时).
有无损耗单?是否把损耗当作一次入库或出库来填写?

 
附加功能 将问题提前
 
附加功能 将问题提前
 
損耗要有這一欄﹐但一般都是結算或盤點的時候加上去。
 
损耗是特殊的出入库,必须明确标示出来。
 
接受答案了.
 
后退
顶部