注册 登录
编程论坛 SQL Server论坛

如何改表名?

Kuntakimp 发布于 2008-11-14 22:04, 2417 次点击
小弟刚学SQL不久,正不知方向,问几个SQL编程的问题,往各位大侠帮帮小弟,
1.如何改表名?
2.第一列中都可以写一些完整性约束条件,如not null,default,identity,primary key,foreign key,有没有这样的文档:把所有的约束条件与其用处都列出来?
3.insert into *()values() 语句只能一排排的插入数据,有没有方法,使得写一个语句,插入多排?
4.在写sql语句的时候,我发觉,如果写了两条,第一条正确,第二条错误,那么在运行的时候,第一条仍然会执行;于是在把第二条调正确的时候,第一条会执行第二便,从而出现不必要的麻烦(如,第二次创建一个一样的表会报错,如本不想插入两个一样的数据,却由于执行第二便而不小心为之);另外,这也与我们的编程习惯不符,我们总是倾向于把所有的错误找出后再一次性运行;我想,可不可以在语句还有错误之前,任何单个语句都不要运行呢?
13 回复
#2
fangchengli2008-11-14 22:08
帮顶
#3
animation2008-11-14 23:28
1.可在企业管理器中修改表名
2.不清楚,不过在Oracle中是可以的
3.不清楚,只知道可以插入另一个表的数据
4.同样也想知道更好的解决方法,我都是在在企业管理器中删除原来的表再执行语句 。。。
从问题可以看出,楼主的学习能力很强啊。这些问题我平时都忽略掉的
#4
西风独自凉2008-11-15 08:36
alter table
#5
jxyga1112008-11-15 09:24
在企业管理器中可以搞定的
#6
Kuntakimp2008-11-15 16:39
哪里有企业管理器啊?
能不能用命令的方式(SQL语言)来改变?

另外,identity(,)这个语句,如果不是在创建一个表的时候使用,而在创建后,加一个约束的形式来使用,可不可以的
#7
Kuntakimp2008-11-15 16:50
哈哈,自己找到了部分答案:


  EXEC   sp_rename   '原表',   '新表'   
  
   
  下例将表   customers   重命名为   custs。   
  EXEC   sp_rename   'customers',   'custs'
   

select   name   from   sysobjects   where   xtype='u'   --确认要更改的表名   
  exec   sp_rename   '旧表名','新表名'
#8
Kuntakimp2008-11-15 16:56
sp_depends 来查询过程,触发器与表的依赖关系
#9
animation2008-11-16 13:07
exec sp_rename啊,这样子啊,知道了
#10
一勺晨露2008-11-16 13:21
在写创建语句前,一般会在之前加一个判断语句,即判断是否已经存在这样一个表。这样应该可以部分解决楼主的第四个问题。
#11
编程38697682008-11-17 23:59
3.insert into *()values() 语句只能一排排的插入数据,有没有方法,使得写一个语句,插入多排?

要想  多排导入   就必须用数据库 导入
#12
happynight2008-11-18 23:25
[bo][un]Kuntakimp[/un] 在 2008-11-15 16:56 的发言:[/bo]

sp_depends 来查询过程,触发器与表的依赖关系

学习 平时对数据库的操作方面的SQL了解的不多
#13
happynight2008-11-18 23:29
对于第四点
你在执行SQL语句前加上
BEGIN TRAN
--SQL代码
.......
--SQL代码
如果有错误 可以执行 ROLLBACK TRAN
如果没有 且检查后确定正确可执行COMMIT TRAN
这样可以确保你的SQL执行正确 不过 好的编程习惯是减少错误的最佳途径
1