Witam.
Chciałbym pobrać dane z bazy dane za pomocą polecenia:
SELECT * FROM TABLELA1 WHERE StrToHex(ARG1)=StrToHex(ARG2)
Dane chciałbym zapisać do obiektu DataSet.
StrToHex() to moja własna funkcja napisana w Accesie, znajduje się w module M1
W samym Accesie ta kwerenda działa. Pokazuje mi poprawne dane. Jednak jeśli chcę wybrać sobie dane w c# za pomocą OleDbCommand to aplikacja się sypie i wyświetla się: Nie zdefiniowana funkcja 'StrToHex' w wyrażeniu.
- Rejestracja:około 14 lat
- Ostatnio:prawie 13 lat
- Postów:4
- Rejestracja:około 14 lat
- Ostatnio:prawie 13 lat
- Postów:4
Azarien napisał(a)
skoro StrToHex(ARG1) ma być równe StrToHex(ARG2) to chyba możemy założyć, że ARG1 będzie równe ARG2?
Właśnie wg Accesa niekoniecznie. Przy porównaniu nie jest uwzględniana wielkość liter.
Przykładowa kwerenda: SELECT * FROM TABELA1 WHERE ARGUMENT1 = 'Xy'
Pokaże mi wiersze w, których ARGUMENT1 wynosi Xy, XY, xy
Chyba, że w samym Accesie są jakieś opcje porównywania. Albo wbudowane funkcje do porównywania tekstów.
Do tej pory radziłem sobie stosując StrToHex, ale kiedy chcę przejść z kwerend w Accesie na proste aplikacje w C# to przestaje to działać.
Udało mi się to obejść pobierając wszystko i operując na obiektach DataSet ale wolałbym od razu pobrać potrzebne dane.

- Rejestracja:ponad 16 lat
- Ostatnio:prawie 9 lat
I jak byś na początku napisał jaki jest cel, a nie tak od d... strony :)
http://support.microsoft.com/kb/244693
- Rejestracja:około 14 lat
- Ostatnio:prawie 13 lat
- Postów:4
massther napisał(a)
I jak byś na początku napisał jaki jest cel, a nie tak od d... strony :)
http://support.microsoft.com/kb/244693
Dzięki.
Rozwiązuje to ten konkretny problem.
Tylko co z sytuacją kiedy własnej funkcji nie da się zastąpić niczym wbudowanym. Czy c# umożliwia przesłanie do Accesa w jakiś sposób zapytań z własnymi funkcjami.
Może da się określić funkcje w zapytaniu jako zewnętrzną , tak żeby c# nie musiał jej znać.

- Rejestracja:prawie 17 lat
- Ostatnio:około 21 godzin
- Postów:2792
Nie. Bo ty nie korzystasz z Accessa, tylko z JET-SQL-a, a on o istnieniu VBA nic nie wie.
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.