搜索
编程论坛
→
开发语言
→
『 VB6论坛 』
→ VB 如何修改SQL表中的字段名
标题:
VB 如何修改SQL表中的字段名
只看楼主
xfwxian
等 级:
新手上路
帖 子:20
专家分:0
注 册:2016-11-16
结帖率:
66.67%
楼主
已结贴
√
问题点数:10 回复次数:9
VB 如何修改SQL表中的字段名
VB修改SQL中的表的字段名,只要执行相关SQL语句就可以实现,可是SQL的表名和字段名是变量怎么办?比如:sp_rename '表名.旧字段名','新字段名'就可修改字段名。可是如果表名、旧字段名、新字段名全部为变量,怎么办?
搜索更多相关主题的帖子:
如何
2016-11-27 09:08
风吹过b
等 级:
贵宾
威 望:
364
帖 子:4912
专家分:29900
注 册:2008-10-15
第
2
楼
得分:0
同样,组合生成 SQL 命令,然后执行就是了。
VB6 有执行SQL命令的方法,你只要按字符串连接的方法把SQL命令生成好就可以了。
如:
sql="ALTER TABLE " & 表名 & " RENAME COLUMN " & 原字段名 & " TO " & 新字段名 & ";"
然后
conn.Execute(Sql) '因为这个查询没有返回结果,所以直接调用,不需要用 set 命令执行
-------------
set rs = conn.Execute(Sql) '如果sql命令是一个查询命令,执行后得到了一个表,使用这种方法
call conn.Execute(Sql) '如果sql命令不是一个查询命令,执行后无法得到一个表,使用这种方法
授人于鱼,不如授人于渔
早已停用QQ了
2016-11-27 10:24
风吹过b
等 级:
贵宾
威 望:
364
帖 子:4912
专家分:29900
注 册:2008-10-15
第
3
楼
得分:0
昨天晚上你不是问这个问题吗?我在手机上,没法回 代码 说明。
今天回完了才发现你重开了贴子。
授人于鱼,不如授人于渔
早已停用QQ了
2016-11-27 10:25
xfwxian
等 级:
新手上路
帖 子:20
专家分:0
注 册:2016-11-16
第
4
楼
得分:0
回复 2楼 风吹过b
你好,谢谢你的热心帮助。你的代码提示:RENAME附近有语法错误,我的语句是strSql = "ALTER TABLE " & AA & " RENAME COLUMN " & bb & " TO " & cc & ";"
其中:AA为表名的变量名,BB为表内原字段名的变量,CC为修改的表字段变量。
另外,麻烦你把修改表名的语句也给我, 同样表名均为变量
[此贴子已经被作者于2016-11-27 22:58编辑过]
2016-11-27 22:54
xzlxzlxzl
来 自:湖北
等 级:
贵宾
威 望:
125
帖 子:1091
专家分:5825
注 册:2014-5-3
第
5
楼
得分:0
这是很奇怪的要求哦!
一般来说“数据结构”+“代码”构成一个完整的系统,这两个相对固定,变化的是数据。数据库结构是数据结构的一部分,代码逻辑都是围绕数据库展开的,如果数据库的结构老变来变去?这个系统怎么稳定可靠?很显然,有共性的数据结构还是应该提取,不能够变来变去。确有个性的某些字段智能算是备注信息了,顶多查询里有用。
在sql server中修改表名的sql语句为sp_rename 原表名,新表名
在access中则无法直接修改表名,一般用复制删除的方式
2016-11-28 09:47
xfwxian
等 级:
新手上路
帖 子:20
专家分:0
注 册:2016-11-16
第
6
楼
得分:0
回复 5楼 xzlxzlxzl
你好,其实我是在制作一个VB小软件,该软件可以将SQL中的英文(或拼音缩写)表名和字段名通过数据字典修改成中文表名和字段名,数据字典的格式为EXCEL,我已经做好了一部分的工作,就是将数据字典的内容存储成了VB的变量,现在要做的就是如何执行SQL语句将这些变量修改成SQL表的表名和字段名,所以不断在提这方面的问题。现在修改表名的功能已经实现,通过SELECT INTO语句。就剩下修改字段名了。
[此贴子已经被作者于2016-11-28 20:32编辑过]
2016-11-28 20:30
xfwxian
等 级:
新手上路
帖 子:20
专家分:0
注 册:2016-11-16
第
7
楼
得分:0
回复 2楼 风吹过b
是什么原因?你看了吗?请你给我看看,行吗?
2016-11-29 09:05
xzlxzlxzl
来 自:湖北
等 级:
贵宾
威 望:
125
帖 子:1091
专家分:5825
注 册:2014-5-3
第
8
楼
得分:10
题主多变哦!
同样access是无法直接修改字段名的,仍然要变通,但会丢失数据,用adox可以完成。
如果是表名、字段名都是变量的话,在vb里你必须先确保数据库连接成功,假设数据库连接对象为cn,使用变量的代码如下:
a="表名"
b="原字段名"
c="新字段名"
cn.excute "sp_rename " & a & "." & b & "," & c & ",COLUMN"
2016-11-29 10:31
xfwxian
等 级:
新手上路
帖 子:20
专家分:0
注 册:2016-11-16
第
9
楼
得分:0
回复 8楼 xzlxzlxzl
感谢你的提示,可是语句报错。我根据SQL语句结合VB字符的使用,做如下更改,成功了:cn.exEcute("sp_rename " & "'" & x(Y) & "." & xx(1) & "'," & "'" & xx(2) & "','COLUMN'"),主要是表名、字段名、字段标识都需要加单引号。我还是把分送给你。
2016-11-30 08:25
xzlxzlxzl
来 自:湖北
等 级:
贵宾
威 望:
125
帖 子:1091
专家分:5825
注 册:2014-5-3
第
10
楼
得分:0
我也注意到单引号了,不过我都是在sql查询器里弄的,不要单引号也可执行,没实际用vb执行。
2016-11-30 10:31
10
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-471636-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.141494 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved