Ⅰ sql server 中的字段默认值为什么没用
那你这样写呢:
insert into formtable_main_112_dt1 (mainid,yfrq,bz,jhfk,fkxx) values (7,'2015-05-06','ces ',220,2)
这样默认的值就不用你填了,数据库自己给你填了
Ⅱ MYSQL数据库字段默认值无效
ALTER
DATABASE
databasename
CHARACTER
SET
utf8;
CREATE
TABLE
xs(
sgjk
VARCHAR(20),
sfkzc
VARCHAR(2)
DEFAULT
'否'
)ENGINE=INNODB
DEFAULT
CHARSET=utf8
注意设置数据库的编码,和表的编码。一般情况下,你的数据库是什么编码,如果表默认那就是和数据库一样的。这个问题应该是你在安装数据库的时候,没有选择utf-8编码。
Ⅲ 数据库设置默认值为什么没用
oracle数据库中的default的用法是:在创建数据库表时,可以指定一个DEFAULT值(即默认值)。对数据库字段使用默认值有助于将数据库设计问题与应用程序代码隔离。可以在以后某个时候通过一条ALTERTABLE命令改变一个字段的默认值,改变之后应用程序代码会立即开始使用新值。即DEFAULT值只有当一个字段没有在INSERT或MERGE中指定值,或者使用了DEFAULT关键字时才会使用。如果你不显式地声明一个DEFULAT值,Oracle将隐式地将默认值定义为NULL,而且DEFAULT关键字也是这样。从Oracle9i开始,可以在DEFAULT子句中使用诸如SYSDATE或CURRENT_TIMESTAMPE之类的伪字段。例如:
Ⅳ SQL字段显示默认值的问题
默认值仅对设置默认值后的记录有效,也就是说如果先添加数据再改默认值就没有用了.
你可以用update语句更新一下
在查询分析器里用
update
表名
set
字段1
=
0
where
字段1
is
null
update
表名
set
字段2
=
''
where
字段1
is
null
Ⅳ SQL字段显示默认值的问题
默认值仅对设置默认值后的记录有效,也就是说如果先添加数据再改默认值就没有用了.
你可以用update语句更新一下
在查询分析器里用
update 表名 set 字段1 = 0 where 字段1 is null
update 表名 set 字段2 = '' where 字段1 is null
Ⅵ SQL 使用insert插入数据默认值没有显示
默认值是在你没有传入这个参数时才会有,你这样写就是相当于给那列传值了,值为NULL或者‘’字符串空知。应该这样写:
insert
into
stuInfo
(e,stuNo,stuSex,stuAge,stuSeat)values
('adf','s25306','男',19,6)
语法是这样的insert
into
表名
(要插入数据的列名)
values(与前面要插入列对应的值)道
如果还报错的话,你看看你设置那字段是否允许为空,把它设置为不允许为空,默认值为“地址不详”
Ⅶ SQL Server 默认值的问题
民族 nvarchar(10) default N'汉'
Ⅷ MSSQL存储过程设置默认值, money 类型设为0为什么没有效果
1有些地方没必要4个单引号,3个就行,在sql中字符串的拼接语句中要表示1个单引号就得用两个单引号,前一个表示转义的意思,编程语言都有转义一说
2因为是字符串拼接的,而@FormerPrice这些是money类型的,如果不转换,就默认要把字符串转换成money类型了,就会出错。所以得把@FormerPrice之类的转换成字符类型的,存储过程修改如下
ALTER PROCEDURE [dbo].[SearchMerchandise]
@Category varchar(50),
@Brand varchar(50),
@Type varchar(50),
@FormerPrice money,
@LatterPrice money
AS
BEGIN
declare @QueryString varchar(100)
set @QueryString = 'select * from Merchandise where Category = ''' + @Category + ''' and Brand = ''' + @Brand + ''' '
SET NOCOUNT ON;
if @Type<>''
set @QueryString = @QueryString+' and Type=''' +@Type+ ''''
if @FormerPrice<>'' and @LatterPrice<>''
set @QueryString = @QueryString+' and PriceNow between '''+ convert(varchar(20),@FormerPrice) + ''' and ''' + convert(varchar(20),@LatterPrice) + ''''
if @FormerPrice<>'' and @LatterPrice=''
set @QueryString = @QueryString+' and PriceNow >=''' + convert(varchar(20),@FormerPrice) + ''''
if @FormerPrice='' and @LatterPrice<>''
set @QueryString = @QueryString+' and PriceNow <=''' + convert(varchar(20),@LatterPrice) + ''''
exec(@QueryString)
END
Ⅸ MYSQL数据库字段默认值无效
ALTER DATABASE databasename CHARACTER SET utf8;
CREATE TABLE xs(
sgjk VARCHAR(20),
sfkzc VARCHAR(2) DEFAULT '否'
)ENGINE=INNODB DEFAULT CHARSET=utf8
注意设置数据库的编码,和表的编码。一般情况下,你的数据库是什么编码,如果表默认那就是和数据库一样的。这个问题应该是你在安装数据库的时候,没有选择utf-8编码。
Ⅹ 怎样使sqlserver的默认值生效
首先你不能给这个属性填充值,哪怕是null都不可以,不然它会把null插入到表里;给你举个例子:假设Users表:属性:uid,username,userpass,rid(状态,默认为0)你向这个user表里插入数据的时候可以这么插入:insert into Users(username,userpass) values('zhangsan','zhangsan')这样你得rid就会有一个默认值0,如果你插入了null,那么它就不会默认为0了,它就有值了,为null;