小菜鸟求教!我现在做了一个小程序,想添加一个复制功能。数据库使用的SQL SERVER
点击按钮后,adoquery1添加什么语句,可以使表TAB1中的数据1,
ID NAME P1 P2 P3 P4
1 abc 1 2 3 4ID=1的那条数据复制成为
ID NAME P1 P2 P3 P4
1 abc 1 2 3 4
2 abc 1 2 3 4其中ID为主键
点击按钮后,adoquery1添加什么语句,可以使表TAB1中的数据1,
ID NAME P1 P2 P3 P4
1 abc 1 2 3 4ID=1的那条数据复制成为
ID NAME P1 P2 P3 P4
1 abc 1 2 3 4
2 abc 1 2 3 4其中ID为主键
解决方案 »
- DataUtils不是delphi自带函数么··为什么我会提示找不到
- delphi 如何根据指定路径展开shelltreeview的节点(譬如'C:\1\2\3')
- 开发用Delphi的那个版本开发软件比较好?
- image怎样按比例显示一幅图片
- 如何得TQuery的当前记录指针
- 高分---动态增加dbf表的字段,用ado动态连接数据库,出现字段定义语法错误
- 如可做出XP风格的窗体?DELPHI程序员的悲哀!
- 关于制作vxd。
- 对两个表进行操作,怎样保持两个表的一致性?
- 无奈:如何取得自定义Key-HOOK的高优先级(在系统级屏蔽按键)
- 关于Delphi数据库查询比较当前时间的问题?
- 关于输入焦点的问题
insert TB(NAME P1 P2 P3 P4)
select NAME P1 P2 P3 P4 from ID=1
select Name, p1, p2, p3, p4 from tb where ID = 1
tb代表你的数据表名
如果不是的,那你主键应该插入什么样的值?
然后执行:
insert tb(Name, p1, p2, p3, p4)
select Name, p1, p2, p3, p4 from tb where ID = 1
就行了
还有就是在SQL SERVER中如何设置数据表字段为自增型,增量为1。
问题较多,把分加了!
這樣是做不到的。
例如你有10條記錄,ID分別是1到10,如果你選擇的是第5條記錄,那麼你希望新的ID是6,已經在DB中存在了,主鍵不能重複,所以操作失敗!
如果ID是自增的,2樓正解;如果不是:找到最大的IDselect max(id) from tb然後insert tb(Name, p1, p2, p3, p4)
select Name, p1, p2, p3, p4 from tb where ID = 1
select "maxid",Name, p1, p2, p3, p4 from tb where ID = 1maxID是剛查詢得到的最大的ID,修正13樓的SQL。
楼主 看来是没有学过SQL
select 2,Name, p1, p2, p3, p4 from tb where ID = 1
不就行了吗
select ID+1,Name, p1, p2, p3, p4 from tb where ID = 1