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

विदेशी कुंजी के रूप में समग्र प्राथमिक कुंजी का प्रयोग करें

लाइन:

FOREIGN KEY (pk_studentID ) REFERENCES student(pk_studentID ),

गलत है। आप pk_studentID का उपयोग नहीं कर सकते इस तरह, यह केवल मूल तालिका में पीके बाधा का नाम है। एक मिश्रित प्राथमिक कुंजी को विदेशी कुंजी के रूप में उपयोग करने के लिए, आपको चाइल्ड टेबल में समान डेटाटाइप के साथ समान संख्या में कॉलम (जो पीके की रचना करते हैं) जोड़ना होगा और फिर इन कॉलम के संयोजन का उपयोग FOREIGN KEY<में करना होगा। /कोड> परिभाषा:

CREATE TABLE files
(
  files_name varchar(50) NOT NULL, 

  batch_id varchar(4) NOT NULL,         --- added, these 3 should not
  dept_id varchar(6) NOT NULL,          --- necessarily be NOT NULL
  student_id varchar (25) NOT NULL,     --- 

  files_path varchar(50),
  files_data varchar(max),              --- varchar(max) ??   
  files_bookmarks xml,                  --- xml ??
                                        --- your question is tagged MySQL, 
                                        --- and not SQL-Server

  CONSTRAINT pk_filesName 
    PRIMARY KEY (files_name),

  CONSTRAINT fk_student_files                     --- constraint name (optional)
    FOREIGN KEY (batch_id, dept_id, student_id)  
      REFERENCES student (batch_id, dept_id, student_id)
) ENGINE = InnoDB ;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. mysql पूर्ण पाठ खोज विफलता

  2. PHP में त्रुटि शामिल है पथ नहीं ढूंढें

  3. MySQL क्लोन प्लगइन और एक्स्ट्राबैकअप के बीच एक तुलना

  4. mysql_fetch_array () पैरामीटर 1 को संसाधन समस्या होने की अपेक्षा करता है

  5. MySQL में मौजूदा टेबल में ऑटो इंक्रीमेंट कॉलम कैसे जोड़ें