CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C++ Builder >  数据库及相关技术

用SQL创建表如何指定默认值?

楼主tplink(黑金)2003-04-04 00:23:20 在 C++ Builder / 数据库及相关技术 提问

如:  
  create   table   student(Sno   char(10),Sex   char(2));  
  我想指定Sex   默认值为'男'  
  问题点数:20、回复次数:9Top

1 楼cuptbluesky(苦行僧)回复于 2003-04-04 03:25:28 得分 0

create后insert一条记录进去,把sex字段置为'男'   了,但这样也只能有一条记录  
  sex是男呀  
  这样做的意义是????不懂  
  //if   有n条记录,使用update  
  //update   student   set   Sex='男';  
  //commit;  
  //这样的话就student中Sex字段就全是‘男’了,可是什么意思呢?还是不懂  
  告诉我你做的意义呢?  
  如果你只是想在用户界面上对该字段有一个默认选择值的话,使用DBGrid的PickList也行呀Top

2 楼oishi(农夫XP)回复于 2003-04-04 08:56:05 得分 0

CREATE   TABLE   jobs  
  (  
        job_id     smallint  
              IDENTITY(1,1)  
              PRIMARY   KEY   CLUSTERED,  
        job_desc                 varchar(50)           NOT   NULL  
              DEFAULT   'New   Position   -   title   not   formalized   yet',  
        min_lvl   tinyint   NOT   NULL  
              CHECK   (min_lvl   >=   10),  
        max_lvl   tinyint   NOT   NULL  
              CHECK   (max_lvl   <=   250Top

3 楼oishi(农夫XP)回复于 2003-04-04 08:56:24 得分 10

D.   使用   DEFAULT   定义  
  使用   INSERT   和   UPDATE   语句时,如果没有提供值,则默认值会提供值。在   pubs   数据库中,使用了许多   DEFAULT   定义以确保输入有效的数据或占位符。  
   
  在   jobs   表上,当没有显式输入实际的描述信息时,默认的字符串将提供描述信息(列   job_desc)。  
   
  DEFAULT   'New   Position   -   title   not   formalized   yet'  
   
  在   employee   表中,员工可以受雇于子公司或母公司。如果没有显式提供公司信息,则输入母公司(注意在表定义中可以嵌套注释,如下所示)。  
   
  DEFAULT   ('9952')  
  /*   By   default   the   Parent   Company   Publisher   is   the   company  
  to   whom   each   employee   reports.   */  
   
  除了常量以外,DEFAULT   定义还可以包含函数。使用下例获取输入项的当前日期:  
   
  DEFAULT   (getdate())  
   
  niladic   函数也可以提高数据的完整性。若要跟踪插入行的用户,请使用   niladic   函数   USER(niladic   函数不使用括号):  
   
  DEFAULT   USER  
   
  Top

4 楼yui()回复于 2003-04-04 09:16:12 得分 5

create   table   student(  
        Sno   char(10),  
        Sex   char(2)   default   '男'  
  )Top

5 楼yui()回复于 2003-04-04 09:20:06 得分 0

插入一条记录:  
   
  insert   student(Sno)   values   ('31')Top

6 楼tplink(黑金)回复于 2003-04-04 11:06:21 得分 0

太感谢各位。  
  如果是用Query的Append()或   Insert()方法插入记录,默认值会不会同样被添加?  
   
  还有niladic函数在哪里使用,能不能介绍再详细些?  
  Top

7 楼cuptbluesky(苦行僧)回复于 2003-04-04 11:41:02 得分 5

呵呵,我理解错了  
  create   table   student(Sno   char(10),Sex   char(2)   default('男'));  
   
  Append(),Insert()时该字段会被默认添加的Top

8 楼cuptbluesky(苦行僧)回复于 2003-04-04 11:42:39 得分 0

对应默认字段不要输入新值,否则保存的将是新值Top

9 楼tplink(黑金)回复于 2003-04-04 23:54:08 得分 0

OK.多谢各位。只是这题分太少,觉得有点对不起各位:)Top

相关问题

  • ◆SQL SERVER创建默认值时出错?
  • 创建表SQL语句---怎么创建一个列的默认值?(Sybase)
  • 如何在用sql脚本创建表时为列加上默认值???
  • 关于sql的默认值的问题?
  • 求一个SQL字段默认值
  • 请问指定dropdownlist的默认值,紧急等待中。
  • 如何用SQL语句创建一个有小数字段的表,小数格式为两位小数,默认值为零(ACCESS数据库)?
  • 如何用SQL语句创建一个有小数字段的表,小数格式为两位小数,默认值为零(ACCESS数据库)?谢谢各位!
  • 如何显示CreateParameter方法创建的参数的默认值
  • 急求一条SQL 改写一列的默认值(已经有默认值),在线等!!!

关键词

  • 字段
  • null
  • sex
  • lvl
  • 男
  • 记录
  • student
  • job
  • create
  • not null

得分解答快速导航

  • 帖主:tplink
  • oishi
  • yui
  • cuptbluesky

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo