|
@@ -0,0 +1,76 @@
|
|
|
+// Программа генерации кода SQL для импорта данных
|
|
|
+// Вызывается через консоль, например DontHarmImport.exe <путь к файлу услуг> <путь к файлу пользователей>
|
|
|
+
|
|
|
+using System.Text;
|
|
|
+
|
|
|
+namespace DontHarmImport
|
|
|
+{
|
|
|
+ internal class Program
|
|
|
+ {
|
|
|
+ static void Main(string[] args)
|
|
|
+ {
|
|
|
+ var scrServices = ImportServices(args[0]);
|
|
|
+ var scrUsers = ImportUsers(args[1]);
|
|
|
+ }
|
|
|
+
|
|
|
+ static string ImportServices(string path)
|
|
|
+ {
|
|
|
+ StringBuilder script = new StringBuilder();
|
|
|
+
|
|
|
+ var fileLines = File.ReadAllLines(path);
|
|
|
+ bool isFirstLine = true;
|
|
|
+ foreach (var line in fileLines)
|
|
|
+ {
|
|
|
+ if (isFirstLine)
|
|
|
+ {
|
|
|
+ isFirstLine = false;
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+
|
|
|
+ var parts = line.Split(";");
|
|
|
+ script.AppendLine(
|
|
|
+ string.Format(
|
|
|
+ "INSERT INTO services (name, price, code) VALUES ('{0}', {1}, {2});",
|
|
|
+ parts[1],
|
|
|
+ parts[2],
|
|
|
+ parts[0]
|
|
|
+ )
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ return script.ToString();
|
|
|
+ }
|
|
|
+
|
|
|
+ static string ImportUsers(string path)
|
|
|
+ {
|
|
|
+ StringBuilder script = new StringBuilder("DECLARE @inserted_row_id INT;\n");
|
|
|
+
|
|
|
+ var fileLines = File.ReadAllLines(path);
|
|
|
+ bool isFirstLine = true;
|
|
|
+ foreach (var line in fileLines)
|
|
|
+ {
|
|
|
+ if (isFirstLine)
|
|
|
+ {
|
|
|
+ isFirstLine = false;
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+
|
|
|
+ var parts = line.Split(";");
|
|
|
+ var nameParts = parts[1].Split(",");
|
|
|
+ var login = parts[2];
|
|
|
+ var password = parts[3];
|
|
|
+
|
|
|
+ script.AppendLine(
|
|
|
+ string.Format(
|
|
|
+ "INSERT INTO services (name, price, code) VALUES ('{0}', {1}, {2});",
|
|
|
+ parts[1],
|
|
|
+ parts[2],
|
|
|
+ parts[0]
|
|
|
+ )
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ return script.ToString();
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|