Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/243.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在同一查询中插入多个值_Php_Mysql - Fatal编程技术网

Php 如何在同一查询中插入多个值

Php 如何在同一查询中插入多个值,php,mysql,Php,Mysql,我的桌子上有很多记录 我想知道如何使用循环在单个查询中插入所有记录。 e、 g 数据库表: 发票号产品价格1产品价格2产品价格3 类似地,我想根据相同的发票idprimary密钥插入10种产品。 我该怎么做请帮忙。感谢mySQL手册中的 INSERT INTO tbl_name (a,b,c) VALUES(1,2,3),(4,5,6),(7,8,9); 这是文档链接试试这个 $con=mysqli_connect(hostname,username,password,databasename

我的桌子上有很多记录 我想知道如何使用循环在单个查询中插入所有记录。 e、 g

数据库表:

发票号产品价格1产品价格2产品价格3

类似地,我想根据相同的发票idprimary密钥插入10种产品。 我该怎么做请帮忙。感谢mySQL手册中的

INSERT INTO tbl_name (a,b,c) VALUES(1,2,3),(4,5,6),(7,8,9);
这是文档链接

试试这个

$con=mysqli_connect(hostname,username,password,databasename);

    // Check connection
    if (mysqli_connect_errno())
      {
      echo "Failed to connect to MySQL: " . mysqli_connect_error();
      }
    mysqli_query($con,"INSERT INTO table_name (a,b,c)
    VALUES ('Peter', 'Griffin'),('absss','avdss','advas'),(7,8,9)");

语法如下所示

-在表_name中插入第1列、第2列的值Value1、VALUE2、VALUE3、VALUE4


但是,如果有多个位置要插入/更新/删除,请检查数据库设计。您可能需要对其进行规范化。

问题在于数据库设计。它坏了是因为它太小了。这使得编写插入、查询或建立实际上是不可行的

相反,这些表应该如下所示。请注意,InvoicedProducts表建立了一个

发票 - 发票号码 发票日期 产品 - 产品名称 productPrice-当前产品价格 发票产品 - 发票FK-发票和产品FK创建复合主键 产品FK invoicedProductPrice-价格发生变化时按价格购买的产品 然后您只需将插入到InvoicedProducts中,如


。。适当的次数,或每个发票/产品对一次。使用单独的INSERT语句,但只使用一个事务。

您能告诉我们您已经做了什么吗?您的数据库架构不清楚,并且您不能用一个主键拥有多条记录。我从你们的问题中了解到的更像是你们在寻找无模式的nosql解决方案。请修改你的问题。@Boynux。。或者只是一个正确规范化的模式。NoSQL在某些方面很好,但它不能直接替代好的RA模式设计。@user2864740,是的,NoSQL不能直接替代RDBMS,反之亦然,这就是为什么我说从我的理解来看,它意味着有条件的,对吗?但问题不清楚他想要实现什么RDBMS或其他解决方案。除了NoSQL和其他工具一样只是一个工具之外,我真的不明白为什么有些人对这个词如此敏感,当他们看到它时,马上说它不是替代!这只是一个工具,知道有这样一个工具很好,不是吗?我对建议很敏感,因为它在上下文中被用作一个完全不合适的建议;这里没有RA或模式完整设计的问题。此外,不加限制地说——或者暗示它在某种程度上没有模式设计需求——是疯狂的手工操作。如果有一个特定的NoSQL可能是合适的,那么应该直接提到它。我希望发票id必须用于新交易..我希望发票id必须是唯一的用于新交易。。以任何产品销售系统为例。客户购买了许多产品,每种产品都有自己的价格、数量和重量。当我们收到账单时,我们会看到客户购买了许多产品及其价格,但发票ID对于每笔交易或账单都是唯一的。我只想做一个简单的产品销售系统,就像百货商店一样。@Mohsin,那很好。插入一条发票记录。听起来,在您的情况下,这将有一个invoiceId列作为PK。然后,使用相同的invoiceId插入所有1,2,…100等相关的InvoicedProducts记录。我在帖子中添加了一个多对多文本的链接,你可能会发现它很有用。在链接中,Order~Invoice和OrderLine~InvoicedProduct。明白了。。谢谢。。。:
INSERT INTO InvoiceProducts (invoiceId, productId, invoidedProductPrice)
VALUES(.., .., ..)