< /p>
Я рассматриваю небольшой проект, и он связан с следующим: < /p>
вместо открытия phpmyadmin и борьбы с щелчком по всем полям, которые я хочу сделать следующие.
A1 = Cellnumber of table name (e. g. "C1")
C1 = Table name
E1 = sql-Output
A4 = field_name,
B4 = datatype
C4 = length
D4 = NULL
E4 = auto_increment
...
< /code>
Большинство полей выпадают, например, Datatype (Integer, Text, Json, ...) < /p>
В следующих строках я объявляю свою базу данных Meta Data. < /p>
A5 = id
B5 = int
C5 = 7
D5 = ...
A6 = name
B6 = text
C6 = ...
< /code>
Я закодировал Makro, который вставляется в ячейку E1, например, < /p>
CREATE TABLE `Test` (
`id` INT(20) NULL AUTO_INCREMENT,
`name` TEXT(100) NOT NULL DEFAULT 'easymathematics'
);
< /code>
выглядит так < /p>
Sub CreateTableSQL
Dim oDoc As Object, oSheet As Object
oDoc = ThisComponent
oSheet = oDoc.Sheets(0)
Dim tableName As String
Dim tableCell as String
Dim startFor as Integer
tableCell = Trim(oSheet.getCellRangeByName("A1").String)
tableName = Trim(oSheet.getCellRangeByName(tableCell).String)
startFor = Trim(oSheet.getCellRangeByName("B2").String)
If tableName = "" Then
MsgBox "Bitte Tabellennamen in C1 eingeben.", 48, "Hinweis"
Exit Sub
End If
Dim sql As String
sql = "CREATE TABLE `" & tableName & "` (" & Chr(10)
Dim i As Integer
For i = (startFor-1) To 100
Dim colName As String, colType As String, colLen As String
Dim colNull As String, autoInc As String, defVal As String
colName = Trim(oSheet.getCellByPosition(0, i).String) ' A
If colName = "" Then Exit For
colType = UCase(Trim(oSheet.getCellByPosition(1, i).String)) ' B
colLen = Trim(oSheet.getCellByPosition(2, i).String) ' C
colNull = UCase(Trim(oSheet.getCellByPosition(3, i).String)) ' D
autoInc = LCase(Trim(oSheet.getCellByPosition(4, i).String)) ' E
defVal = Trim(oSheet.getCellByPosition(5, i).String) ' F
sql = sql & " `" & colName & "` " & colType
If colLen "" Then
sql = sql & "(" & colLen & ")"
End If
If colNull = "NOT NULL" Then
sql = sql & " NOT NULL"
Else
sql = sql & " NULL"
End If
If defVal "" Then
sql = sql & " DEFAULT '" & defVal & "'"
End If
If autoInc = "ja" Then
sql = sql & " AUTO_INCREMENT"
End If
sql = sql & "," & Chr(10)
Next i
sql = Left(sql, Len(sql) - 2) ' letztes Komma entfernen
sql = sql & Chr(10) & ");"
'MsgBox sql, 0, "SQL-Statement"
oSheet.getCellRangeByName("E1").String = sql
End Sub
< /code>
Я создал это с помощью Chatgpt, хорошо? :) < /p>
Так что я надеюсь, что это поможет мне все время создавать таблицы, а не открытые phpmyadmin. : D < /p>
Я хочу сделать вставку, в котором вводит строку данных с id = 0 и содержит метадаты для ячеек.$crud->show_as( hard code )
< /code>
Я планирую получить эти метадаты из нула. < /p>
Может ли кто-нибудь помочь мне с идеями?id=0, {display_as: My Name, show_view = true, ...}, {display_as: next_column, ...}
Мой план состоит в том, чтобы генерировать вставку, которое помещает эти json-стрижки.>
:) < /p> Я рассматриваю небольшой проект, и он связан с следующим: < /p> вместо открытия phpmyadmin и борьбы с щелчком по всем полям, которые я хочу сделать следующие.[code]A1 = Cellnumber of table name (e. g. "C1") C1 = Table name
E1 = sql-Output
A4 = field_name, B4 = datatype C4 = length D4 = NULL E4 = auto_increment ... < /code> Большинство полей выпадают, например, Datatype (Integer, Text, Json, ...) < /p> В следующих строках я объявляю свою базу данных Meta Data. < /p> A5 = id B5 = int C5 = 7 D5 = ...
A6 = name B6 = text C6 = ... < /code> Я закодировал Makro, который вставляется в ячейку E1, например, < /p> CREATE TABLE `Test` ( `id` INT(20) NULL AUTO_INCREMENT, `name` TEXT(100) NOT NULL DEFAULT 'easymathematics' ); < /code> выглядит так < /p> Sub CreateTableSQL Dim oDoc As Object, oSheet As Object oDoc = ThisComponent oSheet = oDoc.Sheets(0)
Dim tableName As String Dim tableCell as String Dim startFor as Integer tableCell = Trim(oSheet.getCellRangeByName("A1").String) tableName = Trim(oSheet.getCellRangeByName(tableCell).String) startFor = Trim(oSheet.getCellRangeByName("B2").String)
If tableName = "" Then MsgBox "Bitte Tabellennamen in C1 eingeben.", 48, "Hinweis" Exit Sub End If
Dim sql As String sql = "CREATE TABLE `" & tableName & "` (" & Chr(10)
Dim i As Integer For i = (startFor-1) To 100 Dim colName As String, colType As String, colLen As String Dim colNull As String, autoInc As String, defVal As String
colName = Trim(oSheet.getCellByPosition(0, i).String) ' A
If colName = "" Then Exit For
colType = UCase(Trim(oSheet.getCellByPosition(1, i).String)) ' B colLen = Trim(oSheet.getCellByPosition(2, i).String) ' C colNull = UCase(Trim(oSheet.getCellByPosition(3, i).String)) ' D autoInc = LCase(Trim(oSheet.getCellByPosition(4, i).String)) ' E defVal = Trim(oSheet.getCellByPosition(5, i).String) ' F
sql = sql & " `" & colName & "` " & colType
If colLen "" Then sql = sql & "(" & colLen & ")" End If
If colNull = "NOT NULL" Then sql = sql & " NOT NULL" Else sql = sql & " NULL" End If
If defVal "" Then sql = sql & " DEFAULT '" & defVal & "'" End If
If autoInc = "ja" Then sql = sql & " AUTO_INCREMENT" End If
'MsgBox sql, 0, "SQL-Statement" oSheet.getCellRangeByName("E1").String = sql End Sub < /code> Я создал это с помощью Chatgpt, хорошо? :) < /p> Так что я надеюсь, что это поможет мне все время создавать таблицы, а не открытые phpmyadmin. : D < /p> Я хочу сделать вставку, в котором вводит строку данных с id = 0 и содержит метадаты для ячеек.$crud->show_as( hard code ) < /code> Я планирую получить эти метадаты из нула. < /p> Может ли кто-нибудь помочь мне с идеями?id=0, {display_as: My Name, show_view = true, ...}, {display_as: next_column, ...}[/code] Мой план состоит в том, чтобы генерировать вставку, которое помещает эти json-стрижки.>
Я работаю над проектом VBA, который будет вставлять модуль в другую книгу Excel, для незащищенной книги это происходит, но с защищенной книгой я не могу этого сделать, у меня тоже есть пароль, может кто-нибудь подскажите мне, как это сделать с...
Существует библиотека для генерации случайных чисел, так почему же нет библиотеки для генерации случайных строк? Идентификатор) но это довольно длинные, дольше они должны быть.
int length = 8;
string s = RandomString.NextRandomString(length)...