我创建了一个SQL表,它有一个类型为“ID”的列
varchar(10)
现在,当我分析CSV文件并将其加载到此表中时,ID列的值(1,2,3,4,5,…)正在存储为(1.0,2.0,3.0,4.0,5.0,…)。
我无法推断为什么在SQL中将列类型设置为Varchar时,所有ID都转换为十进制,如何避免这种情况?
表的create语句:
CREATE TABLE INFO (
AsOfDate DATE NOT NULL,
Employee_ID VARCHAR(10) DEFAULT NULL,
Emlpoyee_Name VARCHAR(200) DEFAULT NULL,
Emlpoyee_Designation VARCHAR(200) DEFAULT NULL,
KEY IDX1_INFO(Employee_ID)
) ENGINE = MyISAM DEFAULT CHARSET = latin1;
CSV文件如下所示:
20180215, 1, John, Data Analyst
20180215, 2, Alex, Full Stack Developer
20180215, 3, Paul, Senior Manager
.
.
.
要解析文件,我使用简单的Pandas逻辑:
df = pd.read_csv("/path/to/csv/file/")
P、 S:我不能将列类型声明为Int,因为有一些ID,如A1、B7等。