Cassandra لغة الاستعلام (CQL): إدراج في، تحديث (مثال)
أدخل البيانات
استخدم Cassandra عبارة الإدراج تكتب البيانات فيها Cassandra أعمدة على شكل صف. Cassandra سيقوم استعلام الإدراج بتخزين الأعمدة التي قدمها المستخدم فقط. يجب عليك بالضرورة تحديد عمود المفتاح الأساسي فقط.
لن يستغرق الأمر أي مساحة للقيم غير المحددة. لا يتم إرجاع أي نتائج بعد الإدراج.
بناء الجملة
Insert into KeyspaceName.TableName(ColumnName1, ColumnName2, ColumnName3 . . . .) values (Column1Value, Column2Value, Column3Value . . . .)
مثال
وهنا لقطة من الإعدام Cassandra إدراج في استعلام الجدول الذي سيؤدي إلى إدراج سجل واحد فيه Cassandra جدول "الطالب".
Insert into University.Student(RollNo,Name,dept,Semester) values(2,'Michael','CS', 2);
بعد التنفيذ الناجح للأمر أدخل في Cassandra، سيتم إدراج صف واحد في Cassandra طالب الجدول رقم 2، الاسم مايكل، قسم علوم الكمبيوتر والفصل الدراسي 2.
فيما يلي لقطة لحالة قاعدة البيانات الحالية.
رفع البيانات
Cassandra لا يزعج. Upsert يعني ذلك Cassandra سيتم إدراج صف إذا لم يكن المفتاح الأساسي موجودًا بالفعل، وإلا إذا كان المفتاح الأساسي موجودًا بالفعل، فسيتم تحديث هذا الصف.
تحديث البيانات
استخدم Cassandra يتم استخدام استعلام التحديث لتحديث البيانات في Cassandra جدولإذا لم يتم إرجاع أي نتائج بعد تحديث البيانات، فهذا يعني أن البيانات تم تحديثها بنجاح وإلا فسيتم إرجاع خطأ. يتم تغيير قيم الأعمدة في بند "Set" بينما يتم تصفية البيانات باستخدام بند "Where".
بناء الجملة
Update KeyspaceName.TableName
Set ColumnName1=new Column1Value,
ColumnName2=new Column2Value,
ColumnName3=new Column3Value,
.
.
.
Where ColumnName=ColumnValue
مثال
فيما يلي لقطة الشاشة التي توضح حالة قاعدة البيانات قبل تحديث البيانات.
وهنا لقطة من الإعدام Cassandra أمر التحديث الذي يقوم بتحديث السجل في جدول الطالب.
Update University.Student Set name='Hayden' Where rollno=1;
بعد التنفيذ الناجح لاستعلام التحديث في Cassandra "تحديث الطالب"، سيتم تغيير اسم الطالب من "كلارك" إلى "هايدن" الذي يحمل الرقم 1.
فيما يلي لقطة الشاشة التي توضح حالة قاعدة البيانات بعد تحديث البيانات.
Cassandra حذف البيانات
يقوم الأمر "حذف" بإزالة صف كامل أو بعض الأعمدة من جدول الطالب. عند حذف البيانات، لا يتم حذفها من الجدول على الفور. وبدلاً من ذلك، يتم تمييز البيانات المحذوفة بعلامة مميزة وتتم إزالتها بعد الضغط.
بناء الجملة
Delete from KeyspaceName.TableName Where ColumnName1=ColumnValue
ما سبق Cassandra سيؤدي بناء جملة حذف الصف إلى حذف صف واحد أو أكثر بناءً على تصفية البيانات في جملة المكان.
Delete ColumnNames from KeyspaceName.TableName Where ColumnName1=ColumnValue
سيؤدي بناء الجملة أعلاه إلى حذف بعض الأعمدة من الجدول.
مثال
فيما يلي اللقطة التي توضح حالة قاعدة البيانات الحالية قبل حذف البيانات.
فيما يلي لقطة للأمر الذي سيؤدي إلى إزالة صف واحد من جدول الطالب.
Delete from University.Student where rollno=1;
بعد التنفيذ الناجح لأمر حذف CQL، سيتم حذف صف واحد من جدول الطالب حيث تكون قيمة رولنو هي 1.
فيما يلي اللقطة التي توضح حالة قاعدة البيانات بعد حذف البيانات.
ابحث عن Cassandra لا يدعم
هناك القيود التالية في Cassandra لغة الاستعلام (CQL).
- لا يدعم CQL استعلامات التجميع مثل الحد الأقصى والحد الأدنى والمتوسط
- لا يدعم CQL المجموعة من خلال وجود استفسارات.
- لا يدعم CQL الصلات.
- لا يدعم CQL استعلامات OR.
- لا يدعم CQL استعلامات أحرف البدل.
- لا يدعم CQL استعلامات الاتحاد والتقاطع.
- لا يمكن تصفية أعمدة الجدول دون إنشاء الفهرس.
- يتم دعم الاستعلام الأكبر من (>) والأقل من (<) فقط في عمود التجميع. Cassandra لغة الاستعلام ليست مناسبة لأغراض التحليلات لأنها تحتوي على الكثير من القيود.
Cassandra حيث البند
In Cassandra، يعد استرداد البيانات مسألة حساسة. يتم تصفية العمود في Cassandra عن طريق إنشاء فهرس على أعمدة المفاتيح غير الأساسية.
بناء الجملة
Select ColumnNames from KeyspaceName.TableName Where ColumnName1=Column1Value AND ColumnName2=Column2Value AND . . .
مثال
- فيما يلي اللقطة التي توضح استرداد البيانات من جدول الطالب دون تصفية البيانات.
select * from University.Student;
يتم استرداد سجلين من جدول الطالب.
- فيما يلي اللقطة التي توضح استرداد البيانات من الطالب باستخدام تصفية البيانات. يتم استرداد سجل واحد.
تتم تصفية البيانات حسب عمود الاسم. يتم استرداد كافة السجلات التي لها اسم يساوي Guru99.
select * from University. Student where name='Guru99';










