草庐IT

insert-query

全部标签

php - 在不求助于 mysql_insert_id() 的情况下,在单个查询中将 SQL 关系插入到 2 个表

我对SQL并不完全陌生,但我对MYSQL感到生疏和挣扎(使用PhPMyAdmin)...看了这个:MySQLinserttomultipletables(relational)和其他一些相关主题,但还没有找到答案。我正在简化示例以阐明要点。如果你有两个表:'table1'has:id(primarykey,auto-increment),description(text)'table2'has:id(primarykey,auto-increment),title(text),description_id(int)如何创建单个INSERT语句以便description_id存储tabl

php - query_cache_min_res_unit;它是什么以及它有什么作用?

我正在MySQL中设置缓存。有人可以解释一下query_cache_min_res_unit吗?它有什么作用等?我已经阅读了手册,但解释得不是很好。感谢详细信息...或示例...谢谢 最佳答案 query_cache_min_res_unit是一个可用于优化查询的变量,具体取决于您可能使用的大量结果集。根据定义,该值是MySQL将分配用于存储查询的最小内存量。您可能希望此值大致为平均查询大小。每个数据库都有不同的最小值,具体取决于您使用的集合的大小。这是我的:mysql>showvariableslike"query%";+----

sql - 带有 last_insert_id() 的 Mysql 多行插入选择语句

好的。所以简而言之,我正在尝试执行INSERTSELECT,例如:STARTTRANSACTION;INSERTINTOdbNEW.entity(commonName,surname)SELECTnamefirst,namelastFROMdbOLD.user;SET@key=LAST_INSERT_ID();INSERTINTOdbNEW.user(userID,entityID,other)SELECTuser_id,@key,otherFROMdbOLD.user;COMMIT;当然,@key不会从每个插入返回每个后续的LAST_INSERT_ID(),而是仅从最后一个插入返回I

MySQL 日期时间 : insert a date with timezone offset

我尝试将时间戳插入“日期”中:INSERTINTOdatesVALUES(4,"2011-10-0412:58:36-0600")4只是一个ID。在表中插入为:2011-10-0412:58:36or0000-00-0000:00:00所以我的问题是,时差-0600丢失了。我怎样才能插入它呢? 最佳答案 您可以使用SUBSTR()将其截断并使用CONVERT_TZ()对其进行转换。http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_substrh

Java PreparedStatement 和 ON DUPLICATE KEY UPDATE : how do I know whether row was inserted or updated?

如果有以下代码,我如何知道execute()方法是导致插入还是更新?Connectionc=DriverManager.getConnection(connectionString);PreparedStatementst=c.prepareStatement("INSERTINTO`table`(`field1`)VALUES(?)ONDUPLICATEKEYUPDATEid=LAST_INSERT_ID(id);");st.setString(1,"somevalue");st.execute();提前致谢。 最佳答案 考虑以下

php - Doctrine - Query One-To-Many, Unidirectional with Join Table association from inverse side

我的目标是:创建通用关联,其中第一个实体(例如类别)可以多次用于其他对象(例如帖子、文章)示例Post有类别,Article也有类别,但Article和Post是完全不同的实体。(两者无法同时连接)映射示例:发布categories=new\Doctrine\Common\Collections\ArrayCollection();}//...}文章categories=new\Doctrine\Common\Collections\ArrayCollection();}//...}类别如您所见,这是一对多、单向的连接表关联。现在,我可以查询单个Post类别和Article类别,但Ca

php - 如何在MySQL中存储 'query-able'加密数据?

我需要一种方法来存储加密数据,而且我仍然可以运行查询。这可能吗?至少我需要一个始终为相同输入返回相同字符串的加密算法,这样我就可以通过加密该字符串并在数据库中查找加密结果来找到所有名为“John”的用户。在PHP中,mcrypt总是返回不同的字符串(我知道这是故意的,以提高安全性)。有什么想法吗? 最佳答案 取决于您如何存储“John”这个名字。如果它是特定领域中唯一的东西,你可以做类似的事情SELECT...FROMsometableWHEREcryptedfirstname=AES_ENCRYPT('John',$key)如果“

mysql - 只返回 mysql Query 的第一个结果

在我的一个应用程序中,我必须确定“foo_id”是否存在于表“foo_table”的“foo”列中>'.只要我知道存在这样的“foo_id”,我的要求就会得到满足。现在,我的问题是如何将其限制为第一场比赛。当我根据mySqlEXPLAIN检查这些查询时:-selectcount(foo)fromfoo_tablewherefoo=;-selectfoofromfoo_tablewherefoo=limit1;在这两种情况下,行数都是58。mySql中有没有一种方法可以将行数限制为1(第一个匹配项),这样就不会不必要地触及行(因为我不需要那个)。 最佳答案

mysql - 使用Mysql对链接表进行多次INSERT

我有两个表,一个链接到另一个的主键。目前我INSERT到A表,得到LAST_INSERT_ID,然后INSERT到B表。但我有数百条记录要插入,我想加快速度。在Mysql中你可以:INSERTINTOtable_a(v1,v2,c3)VALUE(0,1,2);INSERTINTOtable_a(v1,v2,v3)VALUE(4,5,6);等等,或者INSERTINTOtable_a(v1,v2,v3)VALUE(0,1,2),(4,5,6),etc以更快地添加多个条目-但仅限于一个表。当然后者要快得多。我想知道是否可以使用存储过程通过两个链接表为我的示例复制此行为,以及它是否会在性能上

php - mysqli_query、mysqli_fetch_array 和 while 循环

我是PHP的新手,我正在尝试使用PHP构建一个网站。我有本地主机来测试结果,我已经在网站上安装了phpmyadmin。我现在想做的是从数据库“portal”中列出我的表“property”的内容,并用结果填充一个表。我正在使用mysqli_query、mysqli_fetch_array和while循环。我收到以下错误:Warning:mysqli_fetch_array()expectsparameter1tobemysqli_result,booleangiveninC:\xampp\htdocs\falcon\portal\forms\editlisting.phponline1