MatLab을 사용하여 데이터베이스 테이블에 이미지를 삽입하거나 저장할 수 있습니까?
내 코드는 다음과 같습니다.
%Code for Database Login
conn = database('vlmsystem','admin','vlog');
indata = imread('C:\Users\Sony Vaio\Documents\Task\0.1 Systems\System 1 - edited\Appendix\images database\auto1.jpg');
a = getframe(h);
indata = a.cdata;
hgsave(h, 'tempfile.fig')
fid = fopen('tempfile.fig', 'r')
indata = fread(fid, inf, '*uint8')
fclose(fid)
s = size(indata);
bdata = reshape(indata,[],1);
x = conn.Handle
StatementObject = x.preparestatement(insertcommand);
StatementObject.setObject(1,bdata)
StatementObject.execute
close(StatementObject)
dbpath = 'C:\Users\Sony Vaio\Documents\Task\0.1 Systems\System 1 - edited\Appendix\vlogdbase.mdb';
tableName = 'vehicleLog';
colnames = {'date_time','plate_number','login_logout','physical_feature'}
colnames1 = {'date_time'}
colnames2 = {'plate_number'}
colnames3 = {'login_logout'}
colnames4 = {'physical_feature'}
dat = datestr(now);
pltno = (f);
lilo = 'login';
physf = {bdata}
coldata = {dat,pltno,lilo,}
insert(conn,tableName,colnames,coldata);
close(conn);
그리고이 오류가 발생합니다.
graphicsversion 입력 사용 오류가 유효한 그래픽 객체가 아닙니다.
getframe 오류 (50 행) usingMATLABClasses = ~ graphicsversion (parentFig, 'handlegraphics');
번호판 오류> StartKnop_Callback (라인 248) a = getframe (h);
이 솔루션을 복사 해 보았지만 작동하지 않는 것 같습니다. 여기에 링크가 있습니다.
편집 : 수정 코드 ....하지만 ... 데이터베이스에 이진 데이터를 삽입하는 방법. 데이터베이스에는 바이너리 옵션이 없습니다. 결과는 테이블에 입력되지 않습니다.
%Code for Database Login
conn = database('vlmsystem','admin','vlog');
indata = imread('C:\Users\Sony Vaio\Documents\Task\0.1 Systems\System 1 - edited\Appendix\images database\auto1.jpg');
s = size(indata);
bdata = reshape(indata,[],1);
dbpath = 'C:\Users\Sony Vaio\Documents\Task\0.1 Systems\System 1 - edited\Appendix\vlogdbase.mdb';
tableName = 'vehicleLog';
colnames = {'date_time','plate_number','login_logout','physical_feature'}
colnames1 = {'date_time'}
colnames2 = {'plate_number'}
colnames3 = {'login_logout'}
colnames4 = {'physical_feature'}
dat = datestr(now);
pltno = (f);
lilo = 'login';
physf = {bdata}
coldata = {dat,pltno,lilo,physf}
insert(conn,tableName,colnames,coldata);
close(conn);
복사하고있는 내용을 읽으십시오.
솔루션은 다음과 같이 말합니다.
또는 Figure가 있고 그 스냅 샷을 저장하려면 아래 명령을 사용하십시오.
두 블록을 모두 복사했습니다. 하나는 파일을 읽고 하나는 getframe을 사용하여 핸들에서 프레임을 읽습니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다