草庐IT

columns-table

全部标签

MySQL 触发器 : Delete From Table AFTER DELETE

范围:两个表。当一个新顾客被创建时,他们将一些关于他们的信息存储到第二个表中(这也是使用触发器完成的,它按预期工作)。这是我的表结构和关系的示例。表1->赞助人+-----+---------+-----++id+name+val++=====+=========+=====++37+george+x++-----+---------+-----++38+sally+y++-----+---------+-----+表2->patron_info+----+-----+----------++id+pid+name++----+-----+----------++1+37+george

MySQL/SQL : Update with correlated subquery from the updated table itself

我有一个一般性问题,我将尝试用一个例子来解释。假设我有一个包含以下字段的表:“id”、“name”、“category”、“appearances”和“ratio”我的想法是我有几个项目,每个项目都与一个类别相关,并且“出现”了几次。比率字段应包括每个项目的出现次数占类别中项目出现总数的百分比。在伪代码中我需要的是以下内容:对于每个类别找到与之相关的项目的总出现次数。例如,可以使用(selectsum("appearances")fromtablegroupbycategory)对于每一项将比率值设置为项目的出现次数除以上述类别的总和现在我正尝试通过单个更新查询来实现此目的,但似乎无法

mysql - 外键在 MySQL : Why can I INSERT a value that's not in the foreign column? 中不起作用

我在MySQL中创建了一个表:CREATETABLEactions(A_idintNOTNULLAUTO_INCREMENT,typeENUM('rate','report','submit','edit','delete')NOTNULL,Q_idintNOTNULL,U_idintNOTNULL,dateDATENOTNULL,timeTIMENOTNULL,ratetinyint(1),PRIMARYKEY(A_id),CONSTRAINTfk_QuestionFOREIGNKEY(Q_id)REFERENCESquestions(P_id),CONSTRAINTfk_UserF

mysql查询: SELECT DISTINCT column1, GROUP BY column2

现在我有以下查询:SELECTname,COUNT(name),time,price,ip,SUM(price)FROMtablenameWHEREtime>=$yesterdayANDtime而我想做的是在“ip”列中添加一个DISTINCT,即SELECTDISTINCTipFROMtablename所以我的最终输出将是所有列,来自今天时间所在的所有行,按名称分组(每个重复名称的名称计数)并且没有重复的IP地址。我的查询应该是什么样的?(或者,如何使用php将缺少的过滤器添加到输出中)?提前致谢。[更新]为了尽量减少混淆,请考虑这个(简化的)数据库表:|name|ip|------

mysql - 检查 ALTER TABLE 之前是否存在列 -- mysql

有没有办法在ALTERTABLEADDcoumn_name语句运行之前(或之后)检查mySQL数据库中是否存在列?有点像IFcolumnDOESNOTEXISTALTERTABLE东西。我试过ALTERIGNORETABLEmy_tableADDmy_column但如果我要添加的列已经存在,这仍然会引发错误。编辑:用例是在已安装的网络应用程序中升级表——为了简单起见,我想确保我需要的列存在,如果不存在,请使用添加它们改变表 最佳答案 由于mysql控制语句(例如“IF”)仅在存储过程中起作用,因此可以创建并执行一个临时的:DROPP

php - $wpdb->insert 不起作用,last_query 不显示插入 "SHOW FULL COLUMNS FROM"

我运行$wpdb->insert($table,$data),其中data是一个包含column_name=>value的数组,插入不起作用。我尝试了$wpdb->last_query并且返回了一些奇怪的东西:SHOWFULLCOLUMNSFROM`table_im_trying_to_insert`为什么最后一个查询不是我插入的? 最佳答案 我发现了问题。显然,对于新的WP更新,如果您尝试插入VARCHAR列并且列长度小于您尝试插入的长度,它就不会工作。在此更新之前,它会插入它但会剪掉多余的字符。

mysql - 在 MySQL 中 information_schema.TABLES.DATA_FREE 是什么意思?

我不完全确定information_schema.TABLES.DATA_FREE在MySQL中的含义。谁能帮我理解一下?谢谢。 最佳答案 DATA_FREE-已分配但未使用的字节数。它是与数据库文件中存储的数据相比的数据库文件的大小。PHPMyAdmin将此信息显示为“表中的开销”。但是对于InnoDB这很重要——“InnoDB表报告表所属表空间的空闲空间。对于位于共享表空间中的表,这是共享表空间的空闲空间。”。因此,使用典型的InnoDB设置(未设置“innondb_file_per_table”),您将获得所有表的可用空间,而

mysql - alter table 添加外键失败

我有3个表,它们都有innodb引擎:video(url,title,desc,country,...)url->primarykeyvideoCat(_url,category){_url,category}->primarykeyfavorite(fav_url,thumb_path)fav_url->primarykey然后我做:altertablefavoriteaddforeignkey(fav_url)referencesvideo(url)ondeletecascade一切都很顺利,但是当我尝试时:altertablevideoCataddforeignkey(_url)

sql - 添加 DATETIME 列的 Alter Table 语法是什么样的?

当我想将默认值设置为-例如-2011-01-2614:30:00时,我找不到将DATETIME列添加到mysql表的语法是什么样的有人知道那个语法是什么样子的吗?这就是我所拥有的ADDCOLUMNnew_dateDATETIMEAFTERpreceding_col,谢谢 最佳答案 如果您有任何疑问,请在此处解释语法http://dev.mysql.com/doc/refman/5.5/en/alter-table.htmlALTERTABLEyourTableADDCOLUMNnew_dateDATETIMENOTNULLDEFAU

php - PDO 语句 (MySQL) : inserting value 0 into a bit(1) field results in 1 written in table

我使用bit(1)字段来存储bool值并使用PDO准备好的语句写入表中。这是测试表:CREATETABLEIFNOTEXISTS`test`(`SomeText`varchar(255)NOTNULL,`TestBool`bit(1)NOTNULLDEFAULTb'0')ENGINE=MEMORYDEFAULTCHARSET=latin1;这是测试代码:$pdo=newPDO("connectionstringetc");$statement=$pdo->prepare('INSERTINTO`test`(SomeText,TestBool)VALUES(?,?)');$stateme