Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

जावा का उपयोग करके MySQL में बाइट [] सम्मिलित नहीं कर सकता

समस्या यह है कि "कुंजी" नामक आपका कॉलम SQL में एक आरक्षित शब्द है। इसे बैकटिक्स से घेरें और चीजों को काम करना चाहिए। बेहतर अभी तक, कॉलम का नाम बदलने पर विचार करें जो SQL आरक्षित शब्द नहीं है। मैंने नीचे दिए गए कोड का उपयोग करके इसे साबित कर दिया है:

MySQL तालिका:

create table keytable (name varchar(255) not null, `key` blob not null);

जावा कोड:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;

public class MySQLBlobInsert {

    public static void main(String[] args) {
        try {
            Class.forName("com.mysql.jdbc.Driver").newInstance();
        } catch (Exception e) {
            throw new RuntimeException(e);
        }
        Connection conn = null;
        try {
            conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "password");
            byte[] bkey = "This is some binary stuff".getBytes();
            String query = "INSERT INTO keytable (name, `key`) VALUES (?,?)";
            PreparedStatement pstmt = conn.prepareStatement(query);
            pstmt.setString(1, "test");
            pstmt.setBytes(2, bkey);
            pstmt.execute();
        } catch (SQLException e) {
            throw new RuntimeException(e);
        } finally {
            if (conn != null) {
                try { conn.close(); } catch (SQLException e) {}
            }
        }
        System.out.println("done :)");
    }
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. दो तालिकाओं में अद्वितीय मान लागू करें

  2. क्या बहुत सारे डेटाबेस कनेक्शन का कारण बन सकता है

  3. रूबी सीएसवी मल्टीलाइन फ़ील्ड पढ़ें

  4. MySQL:दिनांक के साथ बाधा की जाँच करें

  5. क्या मुझे टेबल कॉलम में कोई डेटा नहीं दर्शाने के लिए NULL या खाली स्ट्रिंग का उपयोग करना चाहिए?