精华内容
下载资源
问答
  • 本教程给大家介绍修改SQL-SERVER数据库表结构的SQL命令附sql命令行修改数据库,涉及到sqlserver数据库命令的相关知识,对sqlserver数据库命令感兴趣的朋友可以参考下本篇文章具体不废话了,请...从表中删除一个字段...

    本教程给大家介绍修改SQL-SERVER数据库表结构的SQL命令附sql命令行修改数据库,涉及到sqlserver数据库命令的相关知识,对sqlserver数据库命令感兴趣的朋友可以参考下本篇文章

    具体不废话了,请看下文代码详细说明吧。

    向表中增加一个 varchar 列:

    ALTER TABLE distributors ADD COLUMN address varchar(30);

    从表中删除一个字段:

    ALTER TABLE distributors DROP COLUMN address RESTRICT;

    在一个操作中修改两个现有字段的类型:

    ALTER TABLE distributors

    ALTER COLUMN address TYPE varchar(80),

    ALTER COLUMN name TYPE varchar(100);

    使用一个 USING 子句, 把一个包含 UNIX 时间戳的 integer 字段转化成 timestamp with time zone:

    ALTER TABLE foo

    ALTER COLUMN foo_timestamp TYPE timestamp with time zone

    USING

    timestamp with time zone 'epoch' + foo_timestamp * interval '1 second';

    对现存字段改名:

    ALTER TABLE distributors RENAME COLUMN address TO city;

    更改现存表的名字:

    ALTER TABLE distributors RENAME TO suppliers;

    给一个字段增加一个非空约束:

    ALTER TABLE distributors ALTER COLUMN street SET NOT NULL;

    从一个字段里删除一个非空约束:

    ALTER TABLE distributors ALTER COLUMN street DROP NOT NULL;

    给一个表增加一个检查约束:

    ALTER TABLE distributors ADD CONSTRAINT zipchk CHECK (char_length(zipcode) = 5);

    删除一个表和它的所有子表的监查约束:

    ALTER TABLE distributors DROP CONSTRAINT zipchk;

    向表中增加一个外键约束:

    ALTER TABLE distributors ADD CONSTRAINT distfk FOREIGN KEY (address) REFERENCES addresses(address) MATCH FULL;

    给表增加一个(多字段)唯一约束:

    ALTER TABLE distributors ADD CONSTRAINT dist_id_zipcode_key UNIQUE (dist_id, zipcode);

    给一个表增加一个自动命名的主键约束,要注意的是一个表只能有一个主键:

    ALTER TABLE distributors ADD PRIMARY KEY (dist_id);

    把表移动到另外一个表空间:

    ALTER TABLE distributors SET TABLESPACE fasttablespace;

    ps:SQL命令行修改数据库

    增加列:

    alter table tableName add columnName varchar(30)

    修改列类型:

    alter table tableName alter column columnName varchar(4000)

    修改列的名称:

    EXEC sp_rename 'tableName.column1' , 'column2' (把表名为tableName的column1列名修改为column2)

    删除列:

    alter table tableName drop column columnName

    以上内容就是本文的全部叙述,希望对大家有所帮助。

    展开全文
  •  从表中删除一个字段:  ALTER TABLE distributors DROP COLUMN address RESTRICT;  在一个操作中修改两个现有字段类型:  ALTER TABLE distributors  ALTER COLUMN address TYPE varchar(80),  ALTER ...
  • 部分删除操作是无法回退,甚至会导致数据库无法运行等重要灾难。这让我想起了句话,删库到跑路,这不仅仅是句玩笑话而已。DELETE以下面CUSTOMERS为例+----+----------+-----+-----------+----------+| ID ...

    所有对于数据的删除操作,都应该是慎重、慎重、再慎重的。

    部分删除操作是无法回退的,甚至会导致数据库无法运行等重要灾难。

    这让我想起了一句话,从删库到跑路,这不仅仅是一句玩笑话而已。

    57fb5c9d3234488ba269782755bf39cb

    DELETE

    以下面CUSTOMERS表为例

    +----+----------+-----+-----------+----------+

    | ID | NAME | AGE | ADDRESS | SALARY |

    +----+----------+-----+-----------+----------+

    | 1 | Ramesh | 32 | Ahmedabad | 2000.00 |

    | 2 | Khilan | 25 | Delhi | 1500.00 |

    | 3 | kaushik | 23 | Kota | 2000.00 |

    | 4 | Chaitali | 25 | Mumbai | 6500.00 |

    | 5 | Hardik | 27 | Bhopal | 8500.00 |

    | 6 | Komal | 22 | MP | 4500.00 |

    | 7 | Muffy | 24 | Indore | 10000.00 |

    +----+----------+-----+-----------+----------+//原文出自【易百教程】,商业转载请联系作者获得授权,非商业请保留原文链接:https://www.yiibai.com/sql/sql-delete-query.html

    1、下面语句根据查询条件,删除一行数据

    DELETE FROM CUSTOMERS WHERE ID = 1;

    2、下面语句删除全部数据

    DELETE FROM CUSTOMERS;

    DELETE操作可以说是安全的删除操作,因为它可以ROLLBACK;

    也就是说如果你误操作,只要没有COMMIT,就可以把数据找回来。

    而另一个删除操作TRUNCATE就没那么幸运了。

    TRUNCATE

    TRUNCATE只能用于删除整张表的数据,不支持WHERE子句

    truncate table CUSTOMERS;

    相对于delete语句,它有2点优势:

    1、delete并不会释放表所占用的空间,而truncate会释放

    2、使用 truncate table 删除全表数据速度更快

    但是truncate 操作自动提交(COMMIT)的,也就是说执行了,数据就找不回来了。

    DROP

    DROP TABLE CUSTOMERS;

    删除表,而不仅仅只有表数据。也就是说把整个表去掉,删除内容和定义,释放空间。

    是三个删除操作中最彻底的,同样也是操作立即生效,没有回头路的。

    DROP还可以用于删除索引DROP INDEX,删除数据库DROP DATABASE等操作。

    总结

    从安全性角度来说delete> truncate >drop,相反的,执行效率确是drop > truncate > delete。

    总之还是一句话,慎重、再慎重。

    展开全文
  • 删除一个对象,它会跑到回收站里面,那么,这样删除操作称为逻辑删除!“还原”:回收站里面对象,一旦被还原,它会跑到原来被删除位置,即原来它在什么地方,它就跑到哪里去!“删除”:当我们在回收站里面对...

    一:逻辑删除

    所谓的逻辑删除,可以理解为“名誉”上的删除!

    名为删除,其实并未真正删除!

    当我们对一个对象进行删除操作之后,那么,这个对象会跑到哪里呢?

    删除一个对象,它会跑到回收站里面,那么,这样的删除操作称为逻辑删除!

    “还原”:回收站里面的对象,一旦被还原,它会跑到原来被删除的位置,即原来它在什么地方,它就跑到哪里去!

    “删除”:当我们在回收站里面对对象进行删除操作之后,那么该对象将从计算机中消失,再也找不回来了,这就等于凭空消失了一样,无根无据,无法再找回来!

    哪些操作属于逻辑删除呢?

    ①右键快捷菜单的“删除”;

    ②菜单栏里面如“文件”→“删除”的操作;

    ③按“Delete”键进行的删除!

    二:物理删除

    要对对象进行物理删除,只能使用组合键来删除!即“Shift+Delete”;通过物理删除,被删除的对象将直接从计算机中消失,而不事先进入回收站!

    这就是逻辑删除和物理删除的区别;前者删除之后往回收站跑,而后者直接从计算机中消失!

    三:知识扩展

    针对对象进行的删除操作,无论是逻辑删除还是物理删除,只有对硬盘的对象进行的逻辑删除操作,才会跑到回收站!

    针对于软盘、U盘、MP3和可移动硬盘等移动存储设备,无论对对象进行的是物理删除还是逻辑删除,该对象将从盘里面、从计算机中消失,对象不会跑到回收站!

    取消

    评论

    展开全文
  • --SQL批量更新数据库中所有用户数据中字段类型为tinyint为int--关键说明:--1、系统syscolumns中查询所有xtype='48'记录得到类型为[tinyint]字段--2、更新字段类型前如果该字段有默认值索引则应先删除掉...

    --SQL批量更新数据库中所有用户数据表中字段类型为tinyint为int

    --关键说明:

    --1、从系统表syscolumns中的查询所有xtype='48'的记录得到类型为[tinyint]的字段

    --2、更新字段类型前如果该字段有默认值索引则应先删除掉对应的索引

    --3、数据表字段数据类型为tinyint在CodeSmith中读出来的是DbType.Byte类型,需要修正

    declare @TableName nvarchar(250)

    --声明读取数据库所有数据表名称游标mycursor1

    declare mycursor1 cursor for select name from dbo.SysObjects WHERE OBJECTPROPERTY(ID, 'IsUserTable') = 1

    --打开游标

    open mycursor1

    --从游标里取出数据赋值到我们刚才声明的数据表名变量中

    fetch next from mycursor1 into @TableName

    --如果游标执行成功

    while (@@fetch_status=0)

    begin

    --定义游标中要修正的字段名变量

    Declare @ColumnName nvarchar(255)

    Declare @ColumnID int

    --通过游标读取指定数据表的所有类型为tinyint的字段

    --声明游标mycursor2

    declare mycursor2 cursor for select name,colid from syscolumns Where ID=OBJECT_ID(@TableName) and xtype='48'  order by colid

    --打开游标

    open mycursor2

    --从游标里取出数据赋值到我们刚才声明的字段名变量中

    fetch next from mycursor2 into @ColumnName,@ColumnID

    --如果游标执行成功

    while (@@fetch_status=0)

    begin

    --1、如果当前字段存在默认值索引则应先删除

    IF  EXISTS (select * from sys.default_constraints where parent_object_id=OBJECT_ID(@TableName) andparent_column_id=@ColumnID)

    BEGIN

    Declare @ConstraintName nvarchar(255)

    select @ConstraintName=name from sys.default_constraints where parent_object_id=OBJECT_ID(@TableName) and parent_column_id=@ColumnID

    exec ('ALTER TABLE ['+@TableName+'] DROP CONSTRAINT ['+@ConstraintName+']')

    END

    --2、更新当前字段[tinyint]类型为[int]类型

    exec ('ALTER TABLE ['+@TableName+'] ALTER COLUMN ['+@ColumnName+'] int')

    --用游标去取下一条记录

    fetch next from mycursor2 into @ColumnName,@ColumnID

    end

    --关闭游标

    close mycursor2

    --撤销游标

    deallocate mycursor2

    --用游标去取下一条记录

    fetch next from mycursor1 into @TableName

    end

    --关闭游标

    close mycursor1

    --撤销游标

    deallocate mycursor1

    展开全文
  • 移动原来数据库中的表、视图等到新数据库 删除原来错误命名数据库 三、举例 1、说明 如图所示: mini_project_move为错误命名数据库 mini_project_movie为正确命名数据库 我们只需要将mini_project_move错误命名...
  • )1)MySQLMySQL是一个简单的SQL外壳(有GNU readline功能)。它支持交互式和非交互式使用。当交互使用时,查询结果采用ASCII格式。当采用非交互式(例如,用...文章杰克.陈2014-02-24608浏览量mysql 数据导入导出数据...
  • 具体不废话了,请看下文代码详细说明吧。向中增加一个 varchar ...从表中删除一个字段:ALTER TABLE distributors DROP COLUMN address RESTRICT;在一个操作中修改两个现有字段类型:ALTER TABLE distributorsA...
  • 最近遇到一个问题,在测试环境恢复正式数据库服务器上备份下来bak文件后,正式环境里数据库复制发布、订阅也被带进来了,结果恢复的数据库无法更改结构,直接删除这些错误发布会提示订阅没有清理,但...
  • 二、删除表中数据 SQL: Delete From ('表名') 如:Delete From abcd 三、执行新语句 SQL:dbcc checkident('表名',reseed,0) 如:dbcc checkident('abcd',reseed,0) 注: { DBCC CHECKIDENT ('table_name',...
  • 在实际工作, 很有可能出现需要删除一个数据库内所有用户数据和内容问题, 比如说, 你用是虚拟主机, 需要把之前安装的数据库内用户和内容全部删除, 并用来安装新的数据库表和内容, 而由于空间商限制, 你...
  • 尊重原创:转自博客园let it be所写的文章,原文链接:修改SQL-SERVER数据库表结构的SQL命令 向中增加一个 varchar 列: ... 从表中删除一个字段:  ALTER TABLE distributors DROP COLUMN ...
  • SQL语法 ...从数据库中删除数据,用于删除行 4、INSERT INTO 向数据库中插入新数据(向中插入新行) 5、CREAT DATEBASE 创建新数据库 6、ALTER DATEBASE 修改数据库 7、CREATE TABLE ...
  • [本文2700字左右,预计阅读需要15-20分钟,操作预计10-15分钟]在前面文章里,我们大致...我们可以把Hive当成一个数据库”,它也具备传统数据库的数据单元,数据库(Database)和(Table)。下面我们来了解一下Hive...
  • 今天有个朋友很着急地打电话给我,他用delete语句误删除SQL Server 2008数据库中个表所有记录,而这个数据库之前没有任何备份。让我帮他解决一下,不然他要赔偿客户很多钱。 SQL Server中误删除数据恢复...
  • 今天有个朋友很着急地打电话给我,他用delete语句误删除SQL Server 2008数据库中个表所有记录,而这个数据库之前没有任何备份。让我帮他解决一下,不然他要赔偿客户很多钱。 SQL Server中误删除数据恢复...
  • -----基本语句--------- --语 句 功 能 --数据操作 SELECT --从数据库表中检索数据行和...DELETE --从数据库表中删除数据行 UPDATE --更新数据库数据 --数据定义 CREATE TABLE --创建一个数据库 DR
  • 修改SQL-SERVER数据库表结构的SQL命令  向中增加一个 varchar 列:  ALTER TABLE ... 从表中删除一个字段:  ALTER TABLE distributors DROP COLUMN address RESTRICT;  在一个操作中修改两个现有
  • SQL 数据库中的事务

    2010-10-08 11:28:00
    SQL 数据库中的事务 11.4.1 事务由来 使用DELETE 命令或UPDATE 命令对数据库进行更新时一次只能操作一个表,这会带来数据库数据不一致问题。例如:企业取消了后勤部,需要将‘后勤部’...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,597
精华内容 638
关键字:

从数据库中删除一个表的sql