2011-04-12 112 views
0

此语句未填充image_path列。我已经从phpMyAdmin复制并粘贴了列名,以确保准确性。为什么mySQL缺少一列?

INSERT INTO (theme_name, theme_path, image_path) 
VALUES ('', 
     '/Applications/MAMP/htdocs/waggleb/wp-content/plugins/app-switcher/themes/Original/', 
     '/Applications/MAMP/htdocs/waggleb/wp-content/plugins/app-switcher/thumbnails/original.png') 
+0

你可以提供一些关于该专栏的细节吗?它是什么类型?我的第一个想法是,你可能试图插入一个太长的字符串(如果它的类型为varchar)。 – 2011-04-12 16:18:05

+0

你的意思是一个新行被成功插入,但插入行的image_path列是NULL? – 2011-04-12 16:18:16

+0

你将这个表插入哪个表?为什么你指定theme_name如果你插入一个空字符串呢? – Keylan 2011-04-12 16:18:18

回答

1

我相信你缺少表名。

它应该是:

插入进[TABLE_NAME] ([专栏]) 值(值])

1

你忘了命名表中插入到:

INSERT INTO my_table (theme_name, theme_path, image_path) 
3

你缺少一个表名。如果你看看MySQL INSERT syntax,你会发现必须包含一个表名。

因此,如果你改变你的查询变得..

INSERT INTO <TABLE NAME> (theme_name, theme_path, image_path) VALUES... 

...都应该很好。

3

你错过了表名

INSERT INTO TABLENAME(theme_name, theme_path, image_path) 
VALUES ('', 
     '/Applications/MAMP/htdocs/waggleb/wp-content/plugins/app-switcher/themes/Original/', 
     '/Applications/MAMP/htdocs/waggleb/wp-content/plugins/app-switcher/thumbnails/original.png') 
1

如果你省略purpopse表名,检查数据类型是列正确。检查目标列的长度足够长,以容纳您插入的内容。