|
|
|
Кто поможет найти ошибку
|
|||
|---|---|---|---|
|
#18+
Public Sub procAlterAllTables() Dim db As Database Dim td As TableDef Dim fld As Field Dim fn As String Dim sSQL As String Dim tn As String Set db = CurrentDb For Each td In db.TableDefs If Left(td.Name, 2) <> "MS" And _ Left(td.Name, 1) <> "~" And _ Left(td.Name, 2) <> "qz" Then tn = td.Name For Each fld In td.Fields fn = fld.Name sSQL = "ALTER TABLE & tn & ALTER COLUMN & fn & NVARCHAR(255) NULL" DoCmd.RunSQL sSQL DoCmd.SetWarnings False Next End If Next Set db = Nothing Set td = Nothing End Sub ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2004, 17:09 |
|
||
|
Кто поможет найти ошибку
|
|||
|---|---|---|---|
|
#18+
sSQL = "ALTER TABLE " & tn & " ALTER COLUMN " & fn & " NVARCHAR(255) NULL" ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2004, 17:15 |
|
||
|
Кто поможет найти ошибку
|
|||
|---|---|---|---|
|
#18+
Проблема не в инструкции SQL, а на строке For Each fld In td.Fields ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2004, 17:18 |
|
||
|
Кто поможет найти ошибку
|
|||
|---|---|---|---|
|
#18+
sSQL = "ALTER TABLE " & tn & " ALTER COLUMN " & fn & " TEXT(255) NULL" а так не плохой вирус получится :) - одним махом все поля в бд -текстовые. Правда "все поля" не получится, так что не забудь про On Error resume next ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2004, 17:22 |
|
||
|
Кто поможет найти ошибку
|
|||
|---|---|---|---|
|
#18+
Но почему у меня тормозит на той строчке не пойму ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2004, 17:25 |
|
||
|
Кто поможет найти ошибку
|
|||
|---|---|---|---|
|
#18+
Dim fld As DAO.Field ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2004, 17:27 |
|
||
|
Кто поможет найти ошибку
|
|||
|---|---|---|---|
|
#18+
Так тормозит или ошибка? Если ошибка - то где ее текст? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2004, 17:27 |
|
||
|
Кто поможет найти ошибку
|
|||
|---|---|---|---|
|
#18+
Уважаемый KV! Не были Вы столь любезны огласить весь список своих ошибок, проблем и мест их возникновения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2004, 17:28 |
|
||
|
Кто поможет найти ошибку
|
|||
|---|---|---|---|
|
#18+
Спасибо Владимиру Санычу, который раз меня выручает. Ну и всем остальным конечно же тоже! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2004, 17:33 |
|
||
|
Кто поможет найти ошибку
|
|||
|---|---|---|---|
|
#18+
Но: 1. В sSQL все равно ошибка. 2. Вопросы надо задавать так, чтобы нам не надо было гадать. Если выходит ошибка, то надо сразу сказать, где и какая. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2004, 17:34 |
|
||
|
Кто поможет найти ошибку
|
|||
|---|---|---|---|
|
#18+
Сенин Викторвесь список своих ошибок, проблем и мест их возникновения Весь - не надо А то будет описание ошибок молодости, проблем с перхотью и мест возникновения геморроя. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2004, 17:35 |
|
||
|
Кто поможет найти ошибку
|
|||
|---|---|---|---|
|
#18+
Была ошибка 13, а теперь действительно в инструкции. Может так нельзя делать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2004, 17:40 |
|
||
|
Кто поможет найти ошибку
|
|||
|---|---|---|---|
|
#18+
Все дружно полезли в инструкцию... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2004, 17:42 |
|
||
|
Кто поможет найти ошибку
|
|||
|---|---|---|---|
|
#18+
А как все таки поменять значения полей во всех таблицах сразу? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2004, 11:21 |
|
||
|
Кто поможет найти ошибку
|
|||
|---|---|---|---|
|
#18+
Для того, чтобы научится менять значения полей во всех таблицах сразу - надо сначала научится правильно задавать вопросы. Или сидеть и ждать телепятов, которые сумеют ответить на незаданные вопросы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2004, 11:31 |
|
||
|
Кто поможет найти ошибку
|
|||
|---|---|---|---|
|
#18+
Мне нужно во всех таблицах разрешить текстовым полям null значения, делал как указано выше, сейчас ошибка в инструкции SQl: Public Sub procAlterAllTables() Dim db As Database Dim td As TableDef Dim fld As DAO.Field Dim fn As String Dim sSQL As String Dim tn As String Set db = CurrentDb On Error Resume Next For Each td In db.TableDefs If Left(td.Name, 2) <> "MS" And _ Left(td.Name, 1) <> "~" And _ Left(td.Name, 2) <> "qz" Then tn = td.Name For Each fld In td.Fields If fld.Name <> "ID_NIK" Then fn = fld.Name sSQL = "ALTER TABLE " & tn & " ALTER COLUMN " & fn & " TEXT(255) NULL" DoCmd.RunSQL sSQL DoCmd.SetWarnings False End If Next End If Next Set db = Nothing Set td = Nothing End Sub Может быть можно сделать не через SQL? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2004, 11:34 |
|
||
|
Кто поможет найти ошибку
|
|||
|---|---|---|---|
|
#18+
DoCmd.SetWarnings False - вот это нужно выкинуть и забыть, как страшный сон. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2004, 11:40 |
|
||
|
Кто поможет найти ошибку
|
|||
|---|---|---|---|
|
#18+
Мне кажется, что стоит еще проверять, является ли поле текстовым + посмотреть соседний топик Лёгкий сложный вопрос (поменять размер текстового поля программным способом) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2004, 11:40 |
|
||
|
Кто поможет найти ошибку
|
|||
|---|---|---|---|
|
#18+
А свойство required мне подойдет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2004, 11:43 |
|
||
|
|

start [/forum/topic.php?fid=45&msg=32515134&tid=1674683]: |
0ms |
get settings: |
5ms |
get forum list: |
8ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
196ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
62ms |
get tp. blocked users: |
2ms |
| others: | 202ms |
| total: | 489ms |

| 0 / 0 |
