官方的资料如下:
9.1.5. 位字段值
可以使用b'value'符号写位字段值。value是一个用0和1写成的二进制值。
位字段符号可以方便指定分配给BIT列的值:
mysql>CREATE TABLE t (b BIT(8))
mysql>INSERT INTO t SET b = b'11111111'
mysql>INSERT INTO t SET b = b'1010'
+------+----------+----------+----------+
| b+0 | BIN(b+0) | OCT(b+0) | HEX(b+0) |
+------+----------+----------+----------+
| 255 | 11111111 | 377 | FF || 10 | 1010 | 12 | A|
+------+----------+----------+----------+
Mysql:bit类型的查询与插入
Posted 10月 11, 2010 by logineran in MYSQL. Tagged: MYSQL.
mysql有种字段类型是bit。
1.如何插入呢?
它的插入必须采用:
可以使用b’value’符号写位字段值。value是一个用0和1写成的二进制值。
mysql>create table an_bit (id bit(8))
Query OK, 0 rows affected (0.00 sec)
mysql>insert into an_bit values (11)
Query OK, 1 row affected (0.00 sec)
虽然可以插入,但是实际插入的数值是11(十进制),不是3(十进制)。
mysql>insert into an_bit values (b’11′)
Query OK, 1 row affected (0.00 sec)
这才是正确的插入方法。 插入的值是3(十进制)
2. 如何查询呢?
mysql>select * from an_bit
+——+
| id |
+——+
|
|
| |
+——+
2 rows in set (0.00 sec)
这样是不对的,看不到东西
mysql>select id+0 from an_bit
+——+
| id+0 |
+——+
| 11 |
|3 |
+——+
2 rows in set (0.00 sec)
这是正确的,可以看到十进制的值。
mysql>select bin(id+0) from an_bit
+———–+
| bin(id+0) |
+———–+
| 1011 |
| 11|
+———–+
2 rows in set (0.00 sec)
这是二进制的值
mysql>select oct(id+0) from an_bit
+———–+
| oct(id+0) |
+———–+
| 13|
| 3 |
+———–+
2 rows in set (0.00 sec)
这是八进制的值
mysql>select hex(id+0) from an_bit
+———–+
| hex(id+0) |
+———–+
| B |
| 3 |
+———–+
2 rows in set (0.00 sec)
这是十六进制的值
mysql表字段默认值的方法。
如下参考:
1.首先,创建一个新的表结构,如下图所示。
2.选择*fromt_temp_test检查表是否已经在数据库中。
3.如果查看t_temp_test表结构sp_helpt_temp_test,您可以看到字段column_b的默认值被定义为空。
4.修改默认值的表格,删除可以修改表格的默认属性,删除默认属性的表格。
5.删除后执行sp_helpt_temp_test,此时默认值属性已被删除。
6.然后添加默认属性altertablet_temp_test为column_b添加约束df_temp_tes_columbb_19da45dbDEFAULT('123')。
Mysql如何更新字段值格式:update
表名称
set
字段名称
=
字段名称
+
1
[
where语句]
比如说数据库中有一张student表,要想把id为1的学生成绩(score)加1则
update
student
set
score=score+1
where
id
=
1
如果你不加where系统就不会知道你具体要更新哪条记录,而导致所有该表中score都增加1,当然,除非这就是你的本意。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)