首页  登陆  注册  博客集  下载频道  网络硬盘  学院论坛  家园
IT学院 网站地图 网站地图
收藏本站 收藏本站
高级搜索 高级搜索
 新闻IT新闻 互联网 微软 黑客新闻 网络网络协议 故障 网络管理 TCP/IP 无线技术 解决方案 黑客技术 漏洞 软件评测 安全资讯
 数据MSsql Oracle Mysql PL/SQL 备份 系统:Linux vista Windows FTP 防火墙 注册表 服务器行情 服务器应用 解决方案 WEB服务器
 墙纸风景壁纸 游戏壁纸 体育壁纸 汽车壁纸 人文壁纸 影视壁纸 广告壁纸 花卉壁纸 节日壁纸 动漫壁纸 明星壁纸 绘画壁纸 月历壁纸
当前位置: > 主页>数据库技术>MSsql >SQL的基本操作(3.表的相关操作)
热门文章排行
 
热门文章排行 巧用触发器对"SQL Serve
SQL Server 2000问答
  问:SQL Server 200
ADO数据访问一点通
SQL Server成为低成本建
SQL Server数据库六种数
SQL Server性能分析参
将ACCESS的转化为SQL SE
拷贝的SQL Server 7数据
优化SQL Server服务器内
精采文章推荐
 
精采文章推荐 SQL Server存储过程入门
SQL的基本操作(1.数据类
SQLMail的原理及实际应
维护SQL Server数据库
简单查询和联合查询两方
怎样用SQL 2000 生成XML
SQL Server 2000的安全
SQL配合3389的一次入侵
SQL SERVER 2000 SP2 12
SQL SERVER 2000通讯管
最新更新文章
 
最新更新文章 SQL Server存储过程入门
用ASP调用SQL的视图和存
SQL的基本操作(4.数据的
SQL的基本操作(3.表的相
SQL的基本操作(2.数据库
SQL的基本操作(1.数据类
SQLMail的原理及实际应
维护SQL Server数据库
配置SQL Server 2000选
Jboss下MS SQL Server配

SQL的基本操作(3.表的相关操作)

编辑:   来源:  日期:2008-04-28   我要投稿      家园

  1.创建表
   (1)用Create Table 命令创建表
   语法:
   Create Table tabl_name
   ({
   }column_name As computed_column_expression
   }
   }[,...n]
   )
   [On {fiegroup | Default}]
   [Textimage_On {fiegroup | Default}]
  
   例子:
   打开cust数据库,创建一个表,该表包含了学生的有关信息,即有学号、姓名、性别、出生日期、籍贯、联系电话、住址和备注信息。
   Use cust
   Create Table students
   (
   number int not null,
   name varchar(10) not null,
   sex char(2) null,
   birthday datetime null,
   hometown varchar(30) null,
   telphone_no varchar(12) null,
   address varchar(30) null,
   others varchar(50) null
   )
   在这个表中number表示学生代号,数据类型为int,不允许为空;name表示学生姓名,数据类型为varchar,长度为10,不允许为空;sex表示学生的性别,数据类型为char,长度为2,允许为空;birthday表示学生的出生日期,数据类型为datetime,允许为空;hometown表示学生的籍贯,数据类型为varchar,长度为30,允许为空;telephone_no表示学生的联系电脑,数据类型为varchar,长度为12,允许为空;address表示学生的住址,数据类型为varchar,长度为30,允许为空;others表示学生的备注信息,长度为50,允许为空。
  
   2.修改表的结构
   (1)使用T-SQL语句增加和删除一个新列
   语法:
   Alter Table table
   {
   ADO
   {[]
   |colun_name As computed_column_expression
   |[]
   }[,...n]
   |Drop
   {Column column
   }[,...n]
   }
  
   例子:打开cust数据库,修改其中的表students的结构,增加一个新字段,字段名为ying,数据类型是varchar,长度是10,没有默认值,充许为空。
   Use cust
   Alter Table students Add ying varchar(10) null
  
   打开cust数据库,修改其中的表students的结构,删除一个字段,字段名为ying。
   Use cust
   Alter Table students Drop Column ying
  
   3.向表中插入数据
   (1)用 Insert 语句
   语法如下:
   Insert [Into]
   {table_name|view_name}[(column_list)]
   {Values|values_list|select_statement}
   注意:在插入数据时,字符数据和日期数据要使用引号引起来。
   例子:
   Use cust
   Insert Into students
   Values (11,"影子","男","1999-12-12","湖北","83779805","武汉市桥口区","VB爱好者")
   打开cust数据库,向students表中插入数据
  
   (2)用Default 选项
   在插入数据时,可以使用Default选项。Default选项有两种形式,一种形式是Default Values,另一种是Default。
   Default Values 形式为表中的某一行的所有列插入默认值。使用这种形式的前提条件是表中的所有列必须是这四种类型之一:Identity属性,Timestamp数据类型,允许为Null,或者有一个指定的默认值。否则,会错误信息。
   例子:
   Use cust
   Insert Into students Default Values
   这个例子会出现错误,因为students表的number字段是设置为不允许为空的。
  
   Default 形式是为表中的某一列插入默认值。要插入的该列必须具备一定的条件,即该列要么是Timestamp 数据类型,要么是允许为Null,要么是有一个指定的默认值,否则,会出现错误信息。
   例子:
   Use cust
   Insert Into students Values(11,"影子",Default,Default,Default,Default,Default,Default)
   由天前2个字段不能为空,所以要赋值,否则会出现错误,而后面的6个字段允许为空,因此可以调用Default默认。
  
   (3)插入部分数据
   在使用Insert语句插入数据是,还可以插入部分数据,也就是可以为每一行的指定的部分列插入数据。在插入部分数据时,应该注意以下三个问题:
   ☆在 Insert 子句中,指定要插入数据的列名。
   ☆在 Values 子句中,列出与列名对应的数据。列名的顺序和数据的顺序应该完全对应。
   ☆在 Insert 子句中,没有列出的列应该至少具有这四种类型之一:Identtty 属性,Timestamp 数据类型,允许为 Null,或者有一个指定的默认值。否则,会出现错误信息。
   例子:
   Use cust
   Insert Into students (number,name)
   Values (110,"影子")
   打开cust数据库,向students表中插入一行数据
   注意:如用下例语句将发生错误,因为name字段是不允许为空的(在创建数据库时设定的)
   Insert Into students (number)
   Values (110)
  
   (4)用 Select 语句插入多条数据
   Insert 语句插入数据的特点是每一次只能插入一行数据。相反,Select 也可以用在 Insert 语句中,并且可以一次插入多条数据。使用 Select 语句插入数据的语法形式如下:
   Insert table_name
   Select column_list
   From table_list
   Where search_conditions
   在使用 Select 语句插入数据时,应该注意下面几点:
   ☆在 Insert 语句中使用 Select 时,他们参考的表既可以是相同的,也可以是不同的。
   ☆要插入数据的表必须已经存在。
   ☆要插入数据的表必须和 Select 的结果集兼容。兼容的含义是列的数量和顺序必须相同,列的数据类型或者相同,或者SQL Server 可以自动转换。
   例子:
   Use cust
   Insert students
   Select number,name,sex,birthday,hometown,telphone_no,address,others
   From students
   注意:
   Select 后面的字段要输完整,这个例子是自己向自己插入多条数据(自己向自己插入是被允许的)
   补充:
   你还可以“From students”后面加上“Where name="影子"”,只插入name等于影子的记录,可以用And 和 Or 加上多个条件。
  
   (5)使用 Select Into 插入数据到一个新表中
   带有 Into 子句的 Select 语句允许用户定义一个新表并且把数据插入到新表中。这种方法不同于前面讲述的那些方法。在前面的那些方法中,一个共同的特点,是在数据输入之前表已经存在。而使用 Select Into 插入数据的方法,是在插入数据的过程中建立新表。
   Select Into 语句的语法如下:
   Select select_list
   Into new_table_name
   From table_list
   Where search_conditions
   在使用 Select Into 插入数据时,要注意下面几点:
   ☆在某个数据库中使用 Select Into 插入数据时,设置该数据库的 Select Into/Bulk Copy 为真。
   ☆新表不能存在,否则会产生错误信息。
   ☆新表中的列和行是基于查询结果集
   ☆要插入的数据不记录在日志中。
   ☆在select_list 中出现的列应该使用别名,否则,新表中的列没有列名。没列名的表只能通过 Select * From new_table_name 的形式查询。因此,应该为列起个别名。
   ☆这种方法多用在对列进行各种计算的情况。
   例子:
   Select number,name
   Into newcust1
   From students
   创建新的表newcust1,插入students表中的number和name字段的所有数据。
   补充:如果要插入所有字段的记录,则“Select *”,也可在“From students”后加条件,方法和上个例子一样。
  
   (6)用 UPdate 语句修改表中的数据
   Update 语句用来修改表中已存在的数据。Update 语句既可以一次修改一行数据,也可以一次修改许多行,甚至可以一次修改表中的全部数据。Update 语句使用 Where 子句指定要修改的行,使用 Set 子句给出新的数据。新数据可以是常量,也可以是指定的表达式,还可以是使用 From 子句来自其他表的数据。
   Update 语句的语法如下:
   Update {table_name|view_name}
   Set {column_list}=expression [,. . .]
   [Where clause]
   在使用 Update 语句时,如果没有使用 Where 子句,那么就对表中所有的行进行修改。如果使用Update 语句修改数据时与数据完整性约束有冲突,那么修改就不会发生,整个修改事务全部滚回。例如,这种冲突可能是所输入的值是错误的数据类型,或者所输入的值违背了在该列定义的规则约束,等等。
   例子:
   Use cust
   Update students
   Set name=name+"007"
   Where number>100
   打开cust数据库,修改students表,使number>100的数据的name的值全部加"007"。
  
   4.用 Delete 语句删除表中的数据
   当数据库中的数据不需要的进修可以删除。一般情况下,删除数据使用 Delete 语句。Delete 语句可以一次


上一篇:SQL的基本操作(2.数据库的相关操作)  
下一篇:SQL的基本操作(4.数据的检索)
 关键字:  
文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【论坛讨论

   相关文章:

   文章评论:(0条)
  
 请留名: 匿名评论   点击查看所有评论
 

  责任编辑:IT学院  声明:刊登此文章是为了传递更多信息,文章内容仅供参考,转载请注明出处。