تنفيذ ملف البرنامج النصي في قاعدة بيانات ح2
-
12-12-2019 - |
سؤال
أولا وقبل كل شيء أود أن أقول أنا جديد ل 2 قاعدة البيانات.أحتاج إلى تنفيذ ملف نصي سكل في قاعدة بيانات ح2.لدي اختبار ملف نصي.سكل وأريد تنفيذ هذا في قاعدة بيانات ح2.هل من الممكن?
المحلول
يمكنك استخدام بيان Runscript SQL : giveacodicetagpre.
أو يمكنك استخدام أداة Runscript Standalone / سطر الأوامر : giveacodicetagpre.
يمكنك أيضا استخدام أداة Runscript داخل تطبيق: giveacodicetagpre.
نصائح أخرى
إذا كنت تستخدم الربيع التمهيد والربيع اختبار مع ح2 وسوف ننظر تلقائيا ل schema.sql
و data.sql
في مسار صفك ومحاولة تشغيل هذه.حتى إذا كنت وضعت لهم في src/test/resources
يجب أن يتم التقاطها وتشغيلها تلقائيا
وبالإضافة إلى ذلك يمكنك تحديد ملفات البيانات التي تريد تشغيلها مع خصائص.على سبيل المثال إضافة خاصية إلىapplication.properties
مثل
spring.datasource.data=classpath:users.sql, classpath:books.sql, classpath:reviews.sql
سيتم تكوين الربيع لتشغيل تلك الملفات الثلاثة سكل بدلا من تشغيل data.sql
على أوسك (هذا لا ينبغي أن يهم حقا) مع الخامس.1.4.192 مع الأوامر التالية ، بغض النظر عن ما فعلته لم أتمكن من رؤية أي نتائج:
java -cp h2*.jar org.h2.tools.RunScript -url "jdbc:h2:file:~/testdb" -user someusername -password somepass -script select.sql
حيث حدد.كان سكل ببساطة:
select * from PUBLIC.MYTABLE;
كان علي أن أضيف -showResults
قبل أن يبدأ الإخراج في الظهور.هنا هو الأمر الكامل:
java -cp /Users/az/.m2/repository/com/h2database/h2/1.4.192/h2-1.4.192.jar org.h2.tools.RunScript -url "jdbc:h2:file:~/testdb" -user someusername -password somepass -script select.sql -showResults
إذا لم يكن لديك جرة المطلوبة ، تحميل من هنا (انقر على jar
الروابط بجانب كل إصدار).بعض الروابط المباشرة للجرار هي كما يلي:
1.4.193 (تحديث 31-أكتوبر-2016)
1.4.192 (تحديث 26 مايو 2016)
1.4.191 (تحديث 21-يناير-2016)
1.4.190 (تحديث 11-أكتوبر-2016)
For me the system responded with:
didn't find org.h2.tools.RunScript driver
The solution was:
java -classpath <path_to_your_h2-*.jar> org.h2.tools.RunScript \
-url jdbc:h2:tcp://localhost/~/test -script test.sql
See: http://www.h2database.com/html/tutorial.html#using_server