当前位置:首页 » 数据仓库 » 数据库库存表用什么字
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

数据库库存表用什么字

发布时间: 2022-07-31 13:32:38

A. 数据库中对于存储汉字和各种符号的字段应该定义为什么类型

需要定义成字符型,一般可用char、varchar、nchar、nvarchar等,具体需要看实际需求。
这几种类型的比较:
CHAR
CHAR存储定长数据很方便,CHAR字段上的索引效率级高,比如定义char(10),那么不论你存储的数据是否达到了10个字节,都要占去10个字节的空间。
VARCHAR
存储变长数据,但存储效率没有CHAR高,如果一个字段可能的值是不固定长度的,我们只知道它不可能超过10个字符,把它定义为 VARCHAR(10)是最合算的。VARCHAR类型的实际长度是它的值的实际长度+1。为什么"+1"呢?这一个字节用于保存实际使用了多大的长度。
从空间上考虑,用varchar合适;从效率上考虑,用char合适,关键是根据实际情况找到权衡点。
NCHAR、NVARCHAR
这两种从名字上看比前面三种多了个"N"。和char、varchar比较起来,nchar、nvarchar最多存储4000个字符,不论是英文还是汉字;而char、varchar最多能存储8000个英文,4000个汉字。可以看出使用nchar、nvarchar数据类型时不用担心输入的字符是英文还是汉字,较为方便,但在存储英文时数量上有些损失。
所以一般来说,如果含有中文字符,用nchar/nvarchar,如果纯英文和数字,用char/varchar

B. mysql编码数据库,数据表,字段各用什么编码

1. ASCII
用途:用来映射简单的单字节字符,比如大小写英文字母、阿拉伯数字、常用的标点符、运算符、控制字符等。
编码范围:U+0000 - U+007F
注意:对于用这类字符的场景够用了,但是却无法表达比如汉字,日文等编码。
2. UNICODE
用途:用来映射包含 ASCII 以内的其他的所有字符。
编码范围:U+0000 - U+10FFFF
注意:ASCII 是 UNICODE 的子集,ASCII 编码的字符可以无损转换为 UNICODE 编码的字符。

MySQL 常用字符集

1. Latin1
Latin1 是 cp1252 或者 ISO-8859-1 的别名。ISO-8859-1 编码是单字节编码,向下兼容 ASCII。
编码范围:U+0000 - U+00FF

ISO-8859-1 收录的字符除 ASCII 收录的字符外,还包括西欧语言、希腊语、泰语、阿拉伯语、希伯来语对应的文字符号。
单字节内的空间都被 ISO-8859-1 编码占用,所以能够用 ISO-8859-1 编码存储、传输其他任何编码的字节流。
比如把一个 Utf8mb4 的编码或者 GBK 的编码存入 Latin1,不会有任何问题。因为 Latin1 保留了原始的字节流,这也就是 MySQL 长期以来把 Latin1 做默认字符集的原因。
但是由于 Latin1 对任何字符都存放字节流,造成了字符个数的浪费。
比如:
CHAR(10) CHARACTER SET LATIN1;CHAR(10) CHARACTER SET UTF8;

该字段中存储字符个数 UTF8 是 Latin1 的三倍!!!
2. GB18030
GB18030 是中国官方标准字符集,向前兼容 GBK、GB2312,是这两个的超集。用 1、2、4 个字节分别表示一个符号。比如对一般中文字符,默认是用两个字节编码存储。Windows 系统,默认用的就是 GB18030。
若只是存储中文字符,那 GB18030 最佳。
原因有两点:
1)占用空间小,比如比 UTF8 小。
2)存储的汉字根据拼音来排序,检索快。
3. UTF8
UTF8 是 Unicode 的编码实现,可以存储 UNICODE 编码对应的任何字符, 这也是使用最多的一种编码。最大的特点就是变长的编码方式,用 1 到 4 个字节表示一个符号,可以根据不同的符号编码字节长度。
字母或数字用 1 字节,汉字用 3 字节,emoji 表情符号用 4 字节。UTF8 字符集目前是使用最广泛的。
注意!MySQL 里常说的 UTF8 是 UTF8MB3 的别名,UTF8MB3 是 UTF8MB4 的子集,UTF8MB4 才是真正的 4 字节 UTF8 字符集!
UTF8MB3 表示最大支持 3 个字节存储字符,UTF8MB4 表示最大 4 个字节存储字符。根据实际需要和未来展望,MySQL 8.0 已经默认用 UTF8MB4 基础字符集。

C. mysql设计数据库钱用什么字段

通常在处理金额方面,使用float 和double 明显不够精确。
设置字段使用decimal 后面不写默认是(10)。根据情况可以设置第二个参数,第二个参数是需要保留的位数,在java 中也不能直接使用 + - * / 方法来计算。使用bigDecimal 处理加法:add 减法:substract 乘法:multiply 除法:divdie。计算

D. 用SQL语言建立数据库表时,其属性可以用汉字表示么

数据库名、表名、字段名是可以用汉字表示的。当然还有存储过程名、触发器名、视图名等。

E. sql语句创建的数据库表格可以使用哪些字符

1
2
3
4
5

-- 创建数据库时,设置数据库的编码方式
-- CHARACTER SET:指定数据库采用的字符集,utf8不能写成utf-8
-- COLLATE:指定数据库字符集的排序规则,utf8的默认排序规则为utf8_general_ci(通过show character set查看)
drop database if EXISTS dbtest;
create database dbtest CHARACTER SET utf8 COLLATE utf8_general_ci;

1
2
3

-- 修改数据库编码
alter database dbtest CHARACTER SET GBK COLLATE gbk_chinese_ci;
alter database dbtest CHARACTER SET utf8 COLLATE utf8_general_ci;

1
2
3
4
5
6
7
8
9

-- 创建表时,设置表、字段编码
use dbtest;
drop table if exists tbtest;
create table tbtest(
id int(10) auto_increment,
user_name varchar(60) CHARACTER SET GBK COLLATE gbk_chinese_ci,
email varchar(60),
PRIMARY key(id)
)CHARACTER SET utf8 COLLATE utf8_general_ci;

1
2
3
4

-- 修改表编码
alter table tbtest character set utf8 COLLATE utf8_general_ci;
-- 修改字段编码
ALTER TABLE tbtest MODIFY email VARCHAR(60) CHARACTER SET utf8 COLLATE utf8_general_ci;

1
2
3
4

-- 查看所有的字符编码
SHOW CHARACTER SET;
-- 查看创建数据库的指令并查看数据库使用的编码
show create database dbtest;

1
2

-- 查看数据库编码:
show variables like '%char%';

1
2

-- 设置character_set_server、set character_set_client和set character_set_results
set character_set_server = utf8; -- 服务器的默认字符集。使用这个语句可以修改成功,但重启服务后会失效。根本的办法是修改配置MYSQL文件MY.INI,

character_set_server=utf8,配置到mysqld字段下。
set character_set_client = gbk; -- 来自客户端的语句的字符集。服务器使用character_set_client变量作为客户端发送的查询中使用的字符集。
set character_set_results = gbk; -- 用于向客户端返回查询结果的字符集。character_set_results变量指示服务器返回查询结果到客户端使用的字符集。包括结果数据,例如列值和结果元数据(如列名)。

1
2

-- 查看某字段使用的编码:
SELECT CHARSET(email) FROM tbtest;

F. SQL Server数据库创建表时表属性用汉字表示好还是英文表示好,说下原因

可以使用中文字段。正常应该没什么问题。如果数据转换的话可能会遇到一些麻烦。比如不同数据库之间的数据交互。可能还有些你预期不到的问题,所以尽量不要能汉字。

养成一个专业的程序员的好习惯最好是用英文和数字,表名而且要能表达这个表的功能。

G. 库存管理该如何建立数据库表

其实库存管理还是非常复杂的,要严格的说的话,包括很多东西,基础设置,期初,日常业务,盘点,配送,借料,在库处理等等,这些又 很多分支。
看你的要求不是很高,就是管理下 料品(就是你说的 原料,成品,半成品;我们把它统称为料品)。 所以建议你建两个主表;包括 料品档案表,和库存档案表(或者叫库位档案表)在主表基础上可以适当 建一些附表。
例如: 1 料品档案表 可以 设 料品编码,料品名称,分类,规格,形态属性(制造件、采购件等) ,成本,成本单位,状态(是否有效),有效起止日期等等。其他的自己去想,
2 库位档案表 可以 设 编码,名称,存储地点,库管员,容量控制(最大容量,剩余容量,容量单位等),重量控制等 ,存储属性,生效属性,存储分类等等。

也可以适当建附表,比如库位档案里的 库管员 可以做成一个附表关联
这个附表可以包含 比如:编码,库管员姓名,年龄,住址,性别 等信息。

虽然像你说的那样多个库的操作和特点似有不同,但是他们也有他们的共性,所以不是像你说的那样,三个库就要建三个表,那如果一个大公司 有上百个库,要建一百个表,比如 典型的物流公司。

H. mysql 建数据库用什么字符集

mysql创建数据库一般使用的字符集为UTF-8,但具体的要根据实际情况进行选择。

工具:mysql5.6,Navicat Premium

步骤:

1、打开Navicat Premium,双击左侧服务器的树形结构,连接到服务器,这里以localhost为例。

I. 数据库表中字段类型有哪些

数据库表中字段类型有二进制数据类型、字符数据类型、数字数据类型 等其中类型。具体类型如下所示:

1、二进制数据类型

Binary、Varbinary、Image

2、字符数据类型

Char,Varchar和 Text

3、Unicode数据类型

包括Nchar,Nvarchar和Ntext

4、日期和时间数据类型

包括Datetime, Smalldatetime, Date, TimeStamp

5、数字数据类型

数字数据类型包括正数和负数、小数和整数

6、货币数据类型

表示正的或者负的货币数量。

7、特殊数据类型

特殊的数据类型有3种,即Timestamp、Bit 和 Uniqueidentifier。

J. 数据库查一个表结构用什么关键字,好象是desc

desc 表名;