คำถามติดแท็ก jdbc

1
ปิดใช้งานคอมมิชชันที่ชัดเจนใน JDBC ตรวจจับใน SQL หรือทำให้ฐานข้อมูลอยู่ในสถานะอ่านอย่างเดียว
พื้นหลัง : ฉันกำลังทำงานในhttp://sqlfiddle.com (เว็บไซต์ของฉัน) และกำลังพยายามป้องกันไม่ให้มีการละเมิดวิธีใดวิธีหนึ่ง ฉันหวังว่าด้วยการถามเกี่ยวกับปัญหาที่ฉันกำลังพูดถึงอยู่ในปัจจุบันฉันไม่ได้ตั้งใจทำให้การละเมิดที่อาจเกิดขึ้นแย่ลงโดยไม่ได้ตั้งใจ แต่คุณจะทำอย่างไร ฉันเชื่อใจพวกคุณ ฉันต้องการป้องกันไม่ให้ผู้ใช้ออกการเรียก 'ส่งสัญญาณ' อย่างชัดเจนภายในบล็อคธุรกรรม จากบริบทของ SQL Fiddle บล็อกธุรกรรมคือรหัสที่เรียกใช้งานบนแผงด้านขวา โดยทั่วไปฉันจะวนซ้ำและดำเนินการรายการคำสั่ง plaintext SQL และฉันต้องการให้แน่ใจว่าการเปลี่ยนแปลงทั้งหมดที่ทำจะถูกย้อนกลับในตอนท้ายของแบทช์ โดยปกติการเปลี่ยนแปลงของพวกเขาจะได้รับการย้อนกลับ แต่บางครั้งก็มีคำสั่ง 'กระทำ' ที่ชัดเจนภายในข้อความและแน่นอนว่าการย้อนกลับของฉันจะไม่ทำงาน ความมุ่งมั่นที่ชัดเจนนี้มีแนวโน้มมากจากผู้ใช้ที่พยายามจะทำลาย schema บน SQL Fiddle ดังนั้นคนอื่น ๆ ที่ทำงานกับมันจะเห็นข้อผิดพลาด ผลลัพธ์หลักที่ต้องการ : ฉันต้องการปิดใช้งานการกระทำที่ชัดเจนในระดับ JDBC ถ้าเป็นไปได้ นี่เป็นเพราะฉันต้องสนับสนุนผู้ขายแบ็กเอนด์ฐานข้อมูลหลายคนและแน่นอนว่าแต่ละคนมีนิสัยใจคอในระดับต่ำ ตัวเลือกสำรอง : หากไม่สามารถกำหนดค่า JDBC เพื่อปิดใช้งานการกระทำที่ชัดเจนได้ฉันจะเปิดให้มีการตรวจหาการกระทำที่ชัดเจนในขณะประมวลผลชุดข้อมูลสำหรับแบ็กเอนด์ต่อไปนี้: SQL Server, Oracle, MySQL และ PostgreSQL สำหรับ SQL …

2
ไคลเอนต์ MariaDB Java เป็นสิ่งทดแทนที่สมบูรณ์แบบสำหรับ MySQL JDBC (Connector / J)?
สถานที่ : ฉันจัดส่งใบสมัคร Java ซึ่งจะทำให้การเชื่อมต่อ JDBC ไปยังฐานข้อมูล MySQL (ในช่วงเวลาของการเขียนนี้อาจเป็น 5.1 หรือ 5.5 แต่หวังว่าคำถามและคำตอบไม่ได้ขึ้นอยู่กับเวอร์ชันมาก) การสังเกต : เห็นได้ชัดว่าฉันสามารถใช้ไดรเวอร์ MySQL JDBC ( Connector / J ) หรือไดรเวอร์ MariaDB JDBC ( ไคลเอนต์ MariaDB Java ) เพื่อเชื่อมต่อกับเซิร์ฟเวอร์ MySQL ข้อดีอย่างหนึ่งจากจุดยืนของ ISV คือไดรเวอร์ MariaDB นั้นได้รับใบอนุญาต LGPL ในขณะที่ MySQL เป็น GPL ที่ได้รับลิขสิทธิ์ ประสิทธิภาพของไดรเวอร์ MariaDBดูดีมาก คำถาม : ไดร์เวอร์ MariaDB …
11 mysql  mariadb  jdbc 

3
แทรกความเร็วสำหรับชุดงานขนาดใหญ่
ในแอปพลิเคชันของฉัน INSERT ของฉันดูเหมือนจะใช้เวลาอย่างมาก ฉันมีวัตถุจำนวนมากในหน่วยความจำ (~ 40-50,000) ซึ่งฉันต้องการแทรกลงในตาราง ลองดูตารางตัวอย่าง CREATE TABLE bill ( id BIGINT(20) PRIMARY KEY, amount INT(11) DEFAULT 0, bill_date DATETIME DEFAULT NOW(), INDEX (bill_date) ) ENGINE=InnoDB การใช้ 3 แถวเป็นขนาดแบทช์ของฉันต่อไปนี้เป็นแนวทางที่ฉันคิดได้สำหรับการแทรก วิธีที่ 1 - สร้างและยิงเม็ดมีด 3 เม็ด INSERT INTO bill (amount, bill_date) VALUES (10, '2012-01-01 00:00:00'); INSERT INTO bill (amount, …
10 mysql  innodb  insert  java  jdbc 

4
ทำไม MySQL ถึงบอกว่าฉันไม่มีความจำ
ฉันพยายามรันINSERT...SELECTMySQL ที่มีขนาดค่อนข้างใหญ่ด้วย JDBC และฉันได้รับข้อยกเว้นต่อไปนี้: Exception in thread "main" java.sql.SQLException: Out of memory (Needed 1073741824 bytes) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073) เนื่องจากฉันไม่ได้ส่งคืนออบเจกต์ ResultSet ฉันจึงคิดว่าพื้นที่ของฮีป Java ไม่น่าจะมีปัญหา อย่างไรก็ตามฉันพยายามเพิ่มมันต่อไปและมันก็ไม่ได้ดี จากนั้นฉันพยายามเรียกใช้คำสั่งใน MySQL Workbench และฉันได้สิ่งเดียวกัน: Error Code 5: Out of memory (Needed 1073741816 bytes) ฉันควรมี RAM มากมายเพื่อให้การดำเนินการเหล่านี้ (เพียงพอที่จะพอดีกับตารางทั้งหมดที่ฉันเลือกจาก) แต่ฉันเดาว่ามีการตั้งค่าต่าง ๆ ที่ฉันจำเป็นต้องปรับแต่งเพื่อใช้ประโยชน์จากหน่วยความจำทั้งหมดของฉัน ฉันใช้หน่วยความจำสูง Amazon EC2 หน่วยความจำเสริมใหญ่เป็นสองเท่าด้วย Windows Server 2008 …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.